Nginx学习笔记系列六:Nginx服务器版本升级和新增模块
如果相对Nginx的版本进行更新,或者要应用一些新的模块,最简单的做法就是停止当前的Nginx服务,然后开启新的Nginx服务。但是这样会导致在一段时间内,用户无法访问服务器。为了解决这个问题,就需要用到Nginx服务器提供的平滑升级功能,这也是Nginx的一大特点,使用这种方式,就可以使Nginx在7x24小时不间断的提供服务了
- 方案一:使用Nginx服务信号完成Nginx升级
- 将旧版本的sbin目录下的Nginx可执行文件备份。
cd /usr/local/nginx/sbin mv nginx nginxold
- 将新版Nginx编译后,会生成在objs文件夹中生成一个新版本的Nginx可执行文件,将新版本的Nginx可执行文件复制到旧版本的sbin目录下
cd /opt/nginx/nginx-1.16.1/objs cp nginx /usr/local/nginx/sbin
- 发送USR2信号给旧版本的master进程
kill -USR2 `more /usr/local/logs/nginx.pid`
- 发送QUIT信号给旧版本的master进程
kill -QUIT `more /usr/local/logs/nginx.pid.oldbin`
- 方案二:使用Nginx安装目录的make命令完成升级
将旧版本的sbin目录下的Nginx可执行文件备份。
cd /usr/local/nginx/sbin mv nginx nginxold
将新版Nginx编译后,会生成在objs文件夹中生成一个新版本的Nginx可执行文件,将新版本的Nginx可执行文件复制到旧版本的sbin目录下
cd /opt/nginx/nginx-1.16.1/objs cp nginx /usr/local/nginx/sbin
进入到安装目录执行,执行
make upgrade
cd /opt/nginx-1.16.1 make upgrade
查看是否升级成功
./nginx -v
本作品采用《CC 协议》,转载必须注明作者和本文链接