博客
关于我
nginx的平滑升级方法:
阅读量:793 次
发布时间:2023-02-15

本文共 1532 字,大约阅读时间需要 5 分钟。

Nginx平滑升级指南

1. 找到Nginx执行文件的路径

使用ps命令查看Nginx进程,找到master进程PID(例如:2752)。

ps auxf | grep nginx

记下master进程PID。

2. 查看Nginx版本及编译参数

运行以下命令查看当前Nginx版本和编译信息。

nginx -V

输出示例:

nginx version: nginx/1.8.0built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC)built with OpenSSL 1.0.1e-fips 11 Feb 2013TLS SNI support enabledconfigure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-http_sub_module --with-google_perftools_module

3. 下载并解压新版本Nginx

下载指定版本的Nginx源码并解压:

tar xf nginx-1.11.5.tar.gzcd nginx-1.11.5

配置编译参数并编译:

./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-http_sub_module --with-google_perftools_modulemake

注意:不要执行make install操作。

4. 移动旧版本Nginx文件

将现有Nginx执行文件备份:

mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_old

5. 替换新编译的Nginx文件

将编译好的Nginx文件复制到sbin目录:

cp objs/nginx /usr/local/nginx/sbin/

6. 执行升级命令

在新版本目录下执行升级命令:

make upgrade

验证配置文件格式:

/usr/local/nginx/sbin/nginx -t

输出示例:

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

重启Nginx主进程:

kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`sleep 1

停止旧版本Nginx:

test -f /usr/local/nginx/logs/nginx.pid.oldbinkill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`

7. 确认升级完成

通过ps命令查看进程状态:

ps aux | grep nginx

查看Nginx版本:

/usr/local/nginx/sbin/nginx -V

旧版本进程应逐步关闭,新版本进程已成为主进程。

转载地址:http://uzjfk.baihongyu.com/

你可能感兴趣的文章
nginx+tomcat单个域名及多个域名配置
查看>>
Nginx+Tomcat实现动静分离
查看>>
nginx+Tomcat性能监控
查看>>
nginx+uwsgi+django
查看>>
nginx+vsftp搭建图片服务器
查看>>
Nginx-http-flv-module流媒体服务器搭建+模拟推流+flv.js在前端html和Vue中播放HTTP-FLV视频流
查看>>
nginx-vts + prometheus 监控nginx
查看>>
Nginx/Apache反向代理
查看>>
Nginx: 413 – Request Entity Too Large Error and Solution
查看>>
nginx: [emerg] getpwnam(“www”) failed 错误处理方法
查看>>
nginx: [emerg] the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:
查看>>
nginx:Error ./configure: error: the HTTP rewrite module requires the PCRE library
查看>>
Nginx:objs/Makefile:432: recipe for target ‘objs/src/core/ngx_murmurhash.o‘解决方法
查看>>
nginxWebUI runCmd RCE漏洞复现
查看>>
nginx_rtmp
查看>>
Nginx、HAProxy、LVS
查看>>
nginx一些重要配置说明
查看>>
Nginx下配置codeigniter框架方法
查看>>
Nginx与Tengine安装和使用以及配置健康节点检测
查看>>
Nginx中使用expires指令实现配置浏览器缓存
查看>>