部分nginx会有安全问题,有时需要进行升级。但是服务在nginx上,不能轻易停止nginx服务,此时就需要对nginx进行平滑升级。
1.查看nginx配置信息
进入nginx的sbin目录,查看nginx配置信息:
[root@NGINX01 sbin]# ./nginx -V
nginx version: nginx/1.18.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --user=nginx --group=nginx --prefix=/app/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --add-module=/app/nginx-sticky-module-ng --with-stream --with-stream_ssl_module
注意上面的configure arguments
参数,下面有用
2.下载新版本nginx并上传到服务器
下载地址:https://nginx.org/en/download.html
tar -zxvf nginx-1.24.0.tar.gz
3.对新版 nginx 进行初始配置。
### 参数与老版本参数保持一致
cd nginx-1.24.0
./configure --user=nginx --group=nginx --prefix=/app/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --add-module=/app/nginx-sticky-module-ng --with-stream --with-stream_ssl_module
./configure
的参数要与上面configure arguments
参数一致
4.编译
执行make
对新版 nginx 进行编译。切记千万不要输入 make install
(据说这样会删除之前的配置)
最新版本nginx的目录下会多出来一个objs目录,里面是新的 Nginx可执行文件
5.备份与复制
备份sbin文件夹中的原来的nginx可执行文件,再把新的可执行文件移过去覆盖
6.升级
在新版本nginx目录下执行make upgrade
,系统就会自动升级nginx版本并逐渐关闭旧的nginx服务。