nginx的平滑升级方法:

简介:

最简单的nginx的平滑升级方法:


1 找到nginx的执行文件的路径

1
# ps auxf|grep nginx  记下nginx的master进程 pid(我这里是2752 )


2 查看当前nginx的版本及编译参数:

1
# nginx -V

nginx version: nginx/1.8.0

built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) 

built with OpenSSL 1.0.1e-fips 11 Feb 2013

TLS SNI support enabled

configure 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 下载tar xf nginx-1.11.5.tar.gz

1
2
3
# tar xf tar xf nginx-1.11.5.tar.gz && cd tar xf 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_module
# make  注意这里不要执行make install操作。


4 移走原先的nginx二进制文件

1
# mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_old

5 替换新编译的 文件到nginx的sbin目录下

1
# cp objs/nginx /usr/local/nginx/sbin/

6 执行升级命令(在解压出的新版本的nginx源文件目录下执行)

1
# make upgrade

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

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

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

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

sleep 1

test -f /usr/local/nginx/logs/nginx.pid.oldbin

kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`


7 检查升级是否完成

1
2
3
# ps aux|grep nginx 可以看到nginx的master进程 pid变了。
# /usr/local/nginx/sbin/nginx -V 也可以看到nginx的版本升级完成了
# ps aux|grep nginx还可以看到老的nginx进程在逐步shutdown。









本文转自 lirulei90 51CTO博客,原文链接:http://blog.51cto.com/lee90/1879814,如需转载请自行联系原作者
目录
相关文章
|
应用服务中间件 nginx
nginx配置项目的几种方法
nginx配置项目的几种方法
192 0
|
小程序 网络协议 应用服务中间件
nginx(二)服务器中配置超时时间的方法
访问超时这个事一般都是在nginx中配置的。 之前大脑发昏,一直研究PHP来着,后来发现,不行,PHP超时怎么配都不好用。 首先说一下配置的位置,是在每个域名的配置文件中配置的 我的域名配置文件如下:
1213 0
|
缓存 应用服务中间件 网络安全
Nginx中配置HTTP2协议的方法
Nginx中配置HTTP2协议的方法
1401 7
|
11月前
|
应用服务中间件 网络安全 nginx
配置Nginx以支持Websocket连接的方法。
通过上述配置,Nginx将能够理解WebSocket协议的特殊要求,代理Websocket流量到合适的后端服务器。注意,Websocket并不是HTTP,尽管它最初是通过HTTP请求启动的连接升级,因此保证Nginx了解并能够妥善处理这种升级流程是关键。
2213 10
|
应用服务中间件 Linux nginx
【Azure App Service】基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?
基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?Web App Linux 默认使用的 Nginx 版本是由平台预定义的,无法更改这个版本。
380 77
|
应用服务中间件 Linux 调度
干货!几个 Nginx 性能优化方法
干货!几个 Nginx 性能优化方法
343 0
|
应用服务中间件 网络安全 nginx
nginx 常用命令 |升级到1.20.1版本 | 如何更换 Nginx SSL 证书
nginx 常用命令 |升级到1.20.1版本 | 如何更换 Nginx SSL 证书
924 0
|
应用服务中间件 Linux 网络安全
2022年超详细在CentOS 7上安装Nginx方法(源码安装)
这篇文章提供了在CentOS 7系统上通过源码安装Nginx的详细步骤,包括从官网下载Nginx源码包、上传至虚拟机、解压、删除压缩包、编译安装前的配置、安装PCRE库(因为Nginx使用PCRE库解析正则表达式)、安装zlib和OpenSSL库(用于支持HTTPS协议)、重新编译Nginx、安装后启动Nginx服务、关闭服务、修改默认端口、以及重启服务测试等步骤。文章还提供了相关命令和操作截图,帮助用户更好地理解和执行安装过程。
2022年超详细在CentOS 7上安装Nginx方法(源码安装)
|
Ubuntu 应用服务中间件 数据库
Nginx配置:阻止非国内IP地址访问的设置方法
此外,出于用户隐私和法律合规性的考虑,应慎重考虑阻止特定国家或地区IP地址的决策。在某些情况下,这可能被视为歧视性或违反当地法律。
1437 3
|
负载均衡 网络协议 应用服务中间件
Nginx配置以及热升级
Nginx配置以及热升级
394 7