linux上升级nginx版本
linux服务器之前已安装nginx,需要升级最新版本。比如漏洞修复。
下载最新安装包
https://nginx.org/en/download.html
1、先查看之前的编译参数
# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.27.4
built by gcc 7.3.0 (GCC)
built with OpenSSL 3.4.0 22 Oct 2024
TLS SNI support enabled
configure arguments: --with-http_ssl_module --with-openssl=/usr/local/openssl-3.4.0
[root@ecs local]#
2、备份文件
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
cp -r /usr/local/nginx/conf /usr/local/nginx/nginx_conf_backup
3、上传新版本的安装包到/usr/local
4、解压缩
tar -zxvf nginx-1.29.1.tar.gz -C /usr/local/src/
cd /usr/local/src/nginx-1.29.1
5、编译
./configure --prefix=/usr/local/nginx --with-http_ssl_module [其他你的原有参数...]
# ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-openssl=/usr/local/openssl-3.4.0
# make (特别注意:此步骤只需要执行 make,千万不要执行 make install,因为 make install 会覆盖安装)
6、替换二进制文件
# 再次备份旧的 nginx 二进制文件
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.backup
# 将新编译的 nginx 二进制文件复制到目标位置,覆盖旧版本
cp objs/nginx /usr/local/nginx/sbin/nginx
7、重启服务
sudo systemctl restart nginx
查看服务状态
sudo systemctl status nginx
8、查看版本
# 检查新版本号
/usr/local/nginx/sbin/nginx -v
# 检查编译参数和模块
/usr/local/nginx/sbin/nginx -V
# 测试配置文件是否正确
/usr/local/nginx/sbin/nginx -t