全网最详细网站更新-nginx平滑升级

nginx下载老版本

1.下载nginx1.20软件包

https://nginx.org/download/nginx-1.20.2.tar.gzhttps://nginx.org/download/nginx-1.20.2.tar.gz

2.解压软件包

tar xf nginx1.20.2.tar

3.进入目录查看有咩有configure可执行脚本

 

4. 查看模块

 5.安装编译环境,根据自己要添加的模块进行添加,这里我装了最基本的几个

 yum -y install pcre-devel zlib-devel gcc-c++ gcc

6.创建nginx用户和组

-M:不创建用户的主目录。

-s /sbin/nologin:禁止用户登录 Shell 环境。

useradd -M -s /sbin/nologin nginx

 7.进行编译

./configure \
--prefix=/usr/local/nginx \ 指定目录
--user=nginx \用户
--group=nginx \组
--with-http_stub_status_module 流量查看状态模块

成功

make&&make install安装一下 

8.查看版本,访问成功

这有个小问题,你会发现为什么没用nginx -v呢

因为我在卸载nginx 把/sbin/nginx删除了,而且profie没有生成,修改配置文件就行

加上 

export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin

source /etc/profile 

 ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx创建快捷方式就行了

 当当当 你看

 

 nginx平滑升级1.24版本

1.下载包1.24

wget https://nginx.org/download/nginx-1.24.0.tar.gz

2.解压

tar xf nginx1.24.tar

 3.编译 

./configure  --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
 

4.不要安装否则会覆盖,我们需要让用户无感升级,不影响流量

make就行

5.为nginx配置一个快捷方式

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx

6. 添加systemctl服务

vim /etc/systemd/system/nginx.service
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target
 
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PIDFile=/usr/local/nginx/logs/nginx.pid
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target

7.修改nginx

把1.20版本的nginx备份,以防未来回滚版本

mv nginx nginx.old
mv /root/nginx.1.24/objs/nginx .

8.查看nginx 

 

9.平滑升级

kill -USR2 8087更新

kill -WINCH 8087结束

kill -quit 8087主进退出,也可以kill 9

看图比较结果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值