- 进入Nginx安装目录的sbin目录下,将原有的Nginx二进制文件复制备份
cp nginx nginx.old
- 使用新的二进制文件覆盖原有二进制文件
cp -r nginx /usr/local/src/nginx/sbin/ -f
- 查看正在运行的老版本Nginx进程号
ps -ef|grep nginx
- 通知运行中的老进程将任务过渡给新的Nginx进程
kill -USR2 53713
/*
1. 该命令执行后会首先会重新调用原命令创建一个新的Nginx进程,但因为我们已经更换了sbin目录下的Nginx文件,所以其实质上使用的是新版本的Nginx
2. 新的Nginx进程创建后,老的Nginx进程和子进程不会结束,但已经不再监控相关端口,实质上已经停止了相关工作,新的工作由新的Nginx进程接管
*/
- 老首长退休
kill -WINCH 53713
- 新的结构
/*
1. 老的Nginx任务工作进程关闭,但主进程并不会关闭,其目的是方便回滚,可以使用reload重启老的进程
2. 新的任务由新的进程完成
*/