怎么能在不停止服务的情况下,平滑的升级nginx?下面告诉你答案,其实很简单
1.下载nginx新版本,并解压,进入解压的目录
2.你要执行旧版本的nginx -V来查看旧版本编译的时候,编译了什么模块,配置了什么信息。
3.编译新版本的nginx,./configure .....,这里省略的内容与旧版本在编译时是一样的,这个内容就是nginx -V查看到的内容,
./configure ......
make
这里注意了,执行到了make这句的时候就停止了,不要make install
4.执行完make后,备份旧版本nginx的可执行程序,就是在安装目录下面sbin下面的nignx
mv sbin/nginx sbin/nginx.old
5.备份好后,就把新版本obj目录下面编译生成的nginx复制到sbin/下面去,也就是上一步备份的目录
6.最后一步,就是在新版本的nginx目录下面执行make upgrade;
make upgrade,这个命令其实就是一个过程:
先 kill -USER2 旧版本主进程号,升级nginx
接着再kill -QUIT 旧版本的主进程号,通知旧版本退出,不再接受新请求