任何的程序都存在漏洞的,nginx也不例外,那nginx怎么正确的升级新版本,如何不停止旧的Nginx基础上,nginx平滑升级的八个步骤如下: 1、到http://nginx.org/en/download.html下载最新稳定版本的nginx。 2、备份nginx二进制文件和配置文件 cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_old cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.old 3、执行./configure命令,如 ./configure --with-http_ssl_module --with-openssl=/path/to/openssl_src 可以执行/usr/local/nginx/sbin/nginx -V命令查看以前的编译参数。 4、执行make install clean来安装新的nginx。 5、为旧的nginx主进程发送USR2信号,这会启动新的nginx主进程而保留旧的nginx主进程。 kill -USR2 `cat /usr/local/nginx/logs/nginx.pid` 6、发送WINCH信号到旧的nginx主进程以杀掉旧的nginx子进程。假设旧的主进程pid是123。 kill -WINCH 123 7、现在你可以测试网站访问是否正常,如果正常,执行以下命令退出旧的nginx主进程;如果不正常,请看第8步。 kill -QUIT 123 8、如果发现nginx不能正常服务,假设新的nginx主进程pid是321,分别执行以下命令以旧nginx替代新nginx。 kill -HUP 123 - 这会让旧的nginx主进程重新生成子进程继续服务 kill -QUIT 321 - 关闭新的nginx进程 kill -TERM 321 -强制退出nginx进程 然后你就可以保证服务器继续上线来检查升级失败的原因。 (责任编辑:IT) |