升级目标将Nginx从版本1.24.0升级至1.30.0或更高以修复相关安全漏洞。第一步准备工作下载新版本源码包前往官网下载nginx-1.30.0.tar.gzwget https://nginx.org/en/download.html # 官网链接实际下载需替换为真实tar.gz地址 # 或使用直接下载链接示例 wget https://nginx.org/download/nginx-1.30.0.tar.gz备份当前Nginx目录备份/usr/local/nginx目录 tar -czvf nginx20260605.tar.gz nginx查看当前版本及编译参数/usr/local/nginx/sbin/nginx -V重要请记录下输出中的--prefix和--with-http_ssl_module等参数后续编译时需要保持一致。示例输出片段--prefix/usr/local/nginx --with-http_ssl_module第二步编译新版本解压源码包tar -zxvf nginx-1.30.0.tar.gz cd nginx-1.30.0配置编译选项使用原版本的参数./configure --prefix/usr/local/nginx --with-http_ssl_module注意如果原-V输出中有其他--with-参数请一并加上。您之前提到的--with-openssl/usr/include/openssl通常不需要手动指定系统默认即可。执行编译/usr/local/nginx-1.30.0下执行make注意此处不要执行make install以免覆盖配置文件第三步替换二进制文件备份旧版Nginx可执行文件cp -rf /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old_$(date %Y%m%d)复制新编译的Nginx文件cp -rf objs/nginx /usr/local/nginx/sbin/第四步重启Nginx服务停止旧版Nginx进程ps -ef | grep nginx # 找到主进程号master process执行停止建议优先使用优雅停止 kill -QUIT 主进程号 # 或强制停止不推荐可能导致连接中断 # kill -9 主进程号启动新版Nginxcd /usr/local/nginx/sbin ./nginx第五步验证升级结果查看版本号./nginx -v预期输出nginx version: nginx/1.30.检查服务状态ps -ef | grep nginx curl -I http://localhost # 测试网页服务是否正常核心注意事项不要执行make install否则可能覆盖您原有的配置文件如nginx.conf。平滑重启推荐若不想中断服务可使用以下命令代替kill./nginxkill -USR2 旧版主进程号 # 启动新进程 kill -QUIT 旧版主进程号 # 优雅关闭旧进程回滚方案如果升级后出现问题可以快速恢复cp -rf /usr/local/nginx/sbin/nginx.old_日期 /usr/local/nginx/sbin/nginx # 然后重启nginx
Nginx 升级指南:从 1.24.0 升级到 1.30.0
升级目标将Nginx从版本1.24.0升级至1.30.0或更高以修复相关安全漏洞。第一步准备工作下载新版本源码包前往官网下载nginx-1.30.0.tar.gzwget https://nginx.org/en/download.html # 官网链接实际下载需替换为真实tar.gz地址 # 或使用直接下载链接示例 wget https://nginx.org/download/nginx-1.30.0.tar.gz备份当前Nginx目录备份/usr/local/nginx目录 tar -czvf nginx20260605.tar.gz nginx查看当前版本及编译参数/usr/local/nginx/sbin/nginx -V重要请记录下输出中的--prefix和--with-http_ssl_module等参数后续编译时需要保持一致。示例输出片段--prefix/usr/local/nginx --with-http_ssl_module第二步编译新版本解压源码包tar -zxvf nginx-1.30.0.tar.gz cd nginx-1.30.0配置编译选项使用原版本的参数./configure --prefix/usr/local/nginx --with-http_ssl_module注意如果原-V输出中有其他--with-参数请一并加上。您之前提到的--with-openssl/usr/include/openssl通常不需要手动指定系统默认即可。执行编译/usr/local/nginx-1.30.0下执行make注意此处不要执行make install以免覆盖配置文件第三步替换二进制文件备份旧版Nginx可执行文件cp -rf /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old_$(date %Y%m%d)复制新编译的Nginx文件cp -rf objs/nginx /usr/local/nginx/sbin/第四步重启Nginx服务停止旧版Nginx进程ps -ef | grep nginx # 找到主进程号master process执行停止建议优先使用优雅停止 kill -QUIT 主进程号 # 或强制停止不推荐可能导致连接中断 # kill -9 主进程号启动新版Nginxcd /usr/local/nginx/sbin ./nginx第五步验证升级结果查看版本号./nginx -v预期输出nginx version: nginx/1.30.检查服务状态ps -ef | grep nginx curl -I http://localhost # 测试网页服务是否正常核心注意事项不要执行make install否则可能覆盖您原有的配置文件如nginx.conf。平滑重启推荐若不想中断服务可使用以下命令代替kill./nginxkill -USR2 旧版主进程号 # 启动新进程 kill -QUIT 旧版主进程号 # 优雅关闭旧进程回滚方案如果升级后出现问题可以快速恢复cp -rf /usr/local/nginx/sbin/nginx.old_日期 /usr/local/nginx/sbin/nginx # 然后重启nginx