本文共 1532 字,大约阅读时间需要 5 分钟。
使用ps命令查看Nginx进程,找到master进程PID(例如:2752)。
ps auxf | grep nginx
记下master进程PID。
运行以下命令查看当前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
下载指定版本的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操作。
将现有Nginx执行文件备份:
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_old
将编译好的Nginx文件复制到sbin目录:
cp objs/nginx /usr/local/nginx/sbin/
在新版本目录下执行升级命令:
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`
通过ps命令查看进程状态:
ps aux | grep nginx
查看Nginx版本:
/usr/local/nginx/sbin/nginx -V
旧版本进程应逐步关闭,新版本进程已成为主进程。
转载地址:http://uzjfk.baihongyu.com/