Windows 系统 Nginx 1.24 → 1.28 完整升级指南

Windows 系统 Nginx 1.24 → 1.28 完整升级指南

Windows 下 Nginx 为绿色免安装程序,升级核心是备份现有文件→停止服务→替换新版程序→验证配置→重启服务,全程操作简单、风险可控,以下是分步详细流程。

一、升级前准备

1. 确认当前版本与安装路径

以管理员身份打开 CMD/PowerShell,进入 Nginx 安装目录(示例:C:\nginx),执行命令查看版本:

bash 复制代码
nginx -v
# 预期输出:nginx/1.24.x

记录安装路径,避免后续文件替换错误。

2. 完整备份旧版本文件

这是升级失败快速回滚的关键,必须执行

  1. 复制整个 Nginx 安装目录,重命名为 nginx_1.24_backup(如 C:\nginx_1.24_backup
  2. 单独备份核心配置与数据目录:
    • 配置文件:conf/nginx.conf 及所有自定义 .conf 文件
    • 网页文件:html/ 目录
    • 日志文件:logs/ 目录(可选,建议保留)

3. 下载官方稳定版 1.28

访问 Nginx 官方下载页,获取 Windows 稳定版压缩包,拒绝第三方修改包

4. 解压新版文件

将下载的 .zip 解压到临时目录 (如 C:\nginx_temp),不要直接覆盖旧目录,方便对比文件。

二、核心升级步骤

1. 停止当前 Nginx 服务

两种停止方式,二选一即可:

  • 命令行停止(推荐):

    bash 复制代码
    # 进入旧版安装目录
    cd C:\nginx
    # 优雅停止服务
    nginx -s stop
  • 服务方式停止(若注册为 Windows 服务):

    bash 复制代码
    net stop nginx

执行后验证进程是否完全关闭:

bash 复制代码
tasklist /fi "imagename eq nginx.exe"

无输出则进程已停止,若残留进程,手动结束任务。

2. 替换程序文件(保留配置)

采用保留自定义配置、仅替换程序文件的方式,避免配置丢失:

  1. 从临时解压目录(C:\nginx_temp)复制以下核心程序文件:
    • nginx.exe(主程序,必换)
    • nginx.pdb(调试文件,可选)
  2. 粘贴到旧版 Nginx 安装目录,覆盖同名文件
  3. 保留原有 conf/html/logs/ 目录,不替换,直接沿用旧配置。

3. 验证配置文件兼容性

新版本可能存在配置指令微调,启动前必须校验配置语法:

bash 复制代码
cd C:\nginx
# 测试配置文件语法
nginx -t

出现 nginx: configuration file C:\nginx\conf\nginx.conf test is successful 即为正常;若报错,根据提示修改配置,或回退到备份的旧配置文件。

4. 启动新版 Nginx 服务

两种启动方式,二选一:

  • 命令行启动(推荐):

    bash 复制代码
    start nginx
  • 服务方式启动(已注册服务):

    bash 复制代码
    net start nginx

5. 验证升级成功

  1. 查看版本号,确认已更新:

    bash 复制代码
    nginx -v
    # 预期输出:nginx/1.28.0
  2. 验证服务可用性:浏览器访问 http://localhost(或你的站点域名),能正常打开页面即升级完成。

  3. 查看模块完整性:

    bash 复制代码
    nginx -V

    确认 http_ssl_modulehttp_v2_module 等常用模块正常加载。

三、异常处理与回滚方案

1. 常见问题解决

  • 启动失败、端口占用:检查 80/443 端口是否被其他程序占用,关闭冲突程序后重启
  • 配置报错:对照 Nginx 1.28 官方变更日志,修改不兼容指令,或直接使用备份的旧配置文件
  • 进程无法停止:打开任务管理器,手动结束所有 nginx.exe 进程后重新操作

2. 快速回滚步骤

若新版运行异常,立即回退到 1.24 版本:

  1. 停止新版 Nginx 服务
  2. 删除当前安装目录的 nginx.exe 等程序文件
  3. 从备份目录 nginx_1.24_backup 复制所有文件,覆盖当前目录
  4. 启动旧版服务,验证服务恢复正常

四、升级注意事项

  1. 生产环境优先在测试环境完成升级验证,确认配置、模块、业务功能兼容后再操作
  2. Windows 版 Nginx 不支持 Linux 下的 USR2/WINCH 平滑升级信号,需停止服务后替换,建议在业务低峰期操作
  3. 升级后保留备份目录至少 7 天,确认业务无异常后再删除
  4. 若使用第三方模块,需确认模块与 1.28 版本兼容,必要时重新编译对应模块
相关推荐
无忧.芙桃22 分钟前
线程同步与线程互斥(上)
linux·运维·操作系统·运维开发
HAPPY酷31 分钟前
【ROS2】16G 内存笔记本跑 ROS2 仿真?VMware 虚拟机“保姆级”配置指南 (R9 7940HX + RTX 4060)
java·linux·ide·windows·pycharm
xywww1685 小时前
大模型 API 选型实战:GPT、Gemini、Claude 接入时该看哪些指标?
运维·服务器·人工智能·python·gpt·langchain
梦想的颜色8 小时前
【Docker原理】Docker 容器一文打尽:生命周期、环境管控、迁移备份、日志进程排查、垃圾清理
运维·docker·容器·容器生命周期·容器日志排查·容器迁移备份·容器进程管理
夜雪一千9 小时前
Python enumerate() 函数完整详解:遍历同时获取索引,告别手动计数
服务器·windows·python
donoot10 小时前
Linux系统下图书馆级电子书全自动标准化分类整理完整实施方案
大数据·linux·运维·电子书管理
ITKEY_10 小时前
macOS brew 安装的nginx 文件在哪里?
运维·nginx·macos
Felix-lxd11 小时前
Ubuntu 22.04 配置 Nginx
linux·nginx·ubuntu
Elastic 中国社区官方博客11 小时前
如何比较两个 Elasticsearch 索引并找出缺失的文档
大数据·运维·数据库·elasticsearch·搜索引擎
Tim_Van12 小时前
在 CentOS 7 中安装 Chromium 的完整步骤
linux·运维·chrome·centos