您的位置:首页 > 运维架构 > Nginx

nginx的平滑升级

2017-07-28 17:05 417 查看
1. 开始之前先查看一下当前使用的版本。
[deng@dengserver2 src]$ sudo /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.12.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC)
configure arguments: --prefix=/usr/local/nginx --with-http_realip_module --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre
※ 注意红色区域,这是以前编译的参数。马上编辑新版本需要用到。
2.下载新版本:http://nginx.org/download.html
[deng@dengserver2 src]$ sudo wget http://nginx.org/download/nginx-1.12.1.tar.gz
[deng@dengserver2 src]$ sudo tar -zxvf nginx-1.12.1.tar.gz
[deng@dengserver2 src]$ cd nginx-1.12.1
[deng@dengserver2 nginx-1.12.1]$ sudo ./configure --prefix=/usr/local/nginx --with-http_realip_module --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre
[deng@dengserver2 src]$ sudo make
3. 执行完后,这里不用在 make install 了,接下来重名/sbin/nginx为nginx.old
# mv /usr/local/webserver/nginx/sbin/nginx /usr/local/webserver/nginx/sbin/nginx.old
4. 复制编译后objs目录下的nginx文件到nginx的安装目录sbin/下
# cp objs/nginx /usr/local/webserver/nginx/sbin/
5. 测试一下新复制过来文件生效情况:
# /usr/local/webserver/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/webserver/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/webserver/nginx/conf/nginx.conf test is successful
6. 让nginx把nginx.pid文件修改成nginx.pid.oldbin,随即启动nginx,实现不间断
# kill -USR2 `cat /usr/local/webserver/nginx/nginx.pid` 更新配置文件
# kill -QUIT `cat /usr/local/webserver/nginx/nginx.pid.oldbin` 优雅的关闭
7. 升级完成了,最后在看一下升级后的版本
[deng@dengserver2 nginx-1.12.1]$ sudo /usr/local/nginx/sbin/nginx -v
nginx version: nginx/1.12.1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  升级 nginx 平滑