nginx编译安装后平滑升级

这篇笔记的背景是 新邮项目的WAF是基于编译安装nginx的
用户要求将nginx版本升级

首先查看现有的nginx版本和状态

查看当前版本:

/usr/local/nginx/sbin/nginx -v
-----------------------------------------------------
查看当前配置:

/usr/local/nginx/sbin/nginx -V

在这里插入图片描述

如图照着选项,保持选项一模一样,到下载好的tar.gz包,解压、编译

已下载
在这里插入图片描述
解压
在这里插入图片描述
在这里插入图片描述
进入解压文件的目录
在这里插入图片描述
按照原文件编译

 ./configure --with-http_ssl_module 

注意,一般情况下,对新版本的预编译只要照搬原有的参数就好,个别特殊情况。例如:启用了一些第三方的模块

那么要多多注意,类似本次实践中的WAF,ModSecurity就是需要在nginx的预编译一起带上的,否则会报错。

nginx: [emerg] module "/usr/local/nginx/modules/ngx_http_modsecurity_module.so" version 1015005 instead of 1016001 in /usr/local/nginx/conf/nginx.conf:1

从报错可以看出 /usr/local/nginx/modules/ngx_http_modsecurity_module.so 这个东西版本有问题
由于我是后来接手此套环境,在开始时并不知道ngx_http_modsecurity_module.so这个文件是什么,怎么来的
查阅资料,参考编译安装并添加modsecurity模块的教程发现,ngx_http_modsecurity_module.so是需要在预编译nginx的时候就add的模块,只有在预编译的时候add了才会在ojbc目录中伴随nginx生成对应的可用的 ngx_http_modsecurity_module.so

在这里插入图片描述

./configure --with-http_ssl_module --add-dynamic-module=../ModSecurity-nginx-master/

预编译完之后,可以发现,当前目录下多了一个objs,
再然后进到objs里面就能看到新的nginx执行文件了
在这里插入图片描述
cp /usr/local/sbin/nginx /usr/local/sbin/nginx-bak
mv XX/objs/nginx /usr/local/sbin/nginx

将objs里面的心nginx替换掉原来的老nginx,注意替换前要备份老nginx

最后平滑重启

make upgrade

升完记得回来看版本

nginx -V

- - - - - 2020年7月更新- - - - -

ubuntu系统apt安装的nginx升级方法
添加nginx安装源+apt命令安装

wget http://nginx.org/keys/nginx_signing.key
apt-key add nginx_signing.key

vim /etc/apt/sources.list
## 添加源
deb http://nginx.org/packages/ubuntu/ $(ubuntu发行版的代号) nginx
deb-src http://nginx.org/packages/ubuntu/ $(ubuntu发行版的代号) nginx
##举个例子,如下图的版本
#添加源就应该写成
	deb http://nginx.org/packages/ubuntu/ bionic nginx
	deb-src http://nginx.org/packages/ubuntu/ bionic nginx 

在这里插入图片描述
完成了之后

apt-get update
apt install nginx
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值