nginx 命令简记

1) 修改配置文件后,平滑重启,(此处认为配置文件,pid 文件均在默认位置,即 /etc/nginx/nginx.conf 和 /run/nginx.pid)

# 测试配置文件语法无误,
$ sudo nginx -t
# 然后,
$ sudo kill -SIGHUP `cat /run/nginx.pid`
# 或,
$ sudo kill -1 `cat /run/nginx.pid`

2) 从容关闭 nginx 服务

$ sudo kill -SIGQUIT `cat /run/nginx.pid`
或,
$ sudo kill -3 `cat /run/nginx.pid`

3)快速关闭 nginx 服务

$ sudo kill -SIGTERM `cat /run/nginx.pid`
或,
$ sudo kill -SIGINT `cat /run/nginx.pid`

4) 平滑升级

- 首先编译安装新的 nginx, 可直接覆盖旧版本的安装路径上

- 同时运行新旧版本

$ sudo kill -SIGUSR2 `cat /run/nginx.pid`

此时,新旧版本同时运行,新版本的 pid 文件为 /run/nginx.pid,旧版本的 pid 文件被重命名未 /run/nginx.pid.oldbin。

要逐步停止旧版本,需要发送 WINCH 信号给旧的主进程,

$ sudo kill -SIGWINCH 旧版本的主进程号

一段时间后,旧版本的所有工作进程 worker process 运行结束全部退出,仅由新版本的工作进程 worker process 来处理请求。

此时可以决定使用新版本还是恢复到旧版本。

* 如果要使用新版本,则关闭旧版本的主进程,

$ sudo kill -SIGQUIT 旧版本的主进程号

* 如果要恢复到旧版本,则先启动旧版本的工作进程,

$ sudo kill -SIGHUP 旧版本的主进程号

然后从容关闭新版本的主进程,

$ sudo kill -SIGQUIT 新版本的主进程号

当新版本关闭后,旧的主进程会移除 /run/nginx.pid.oldbin,恢复它的 pid 文件 /run/nginx.pid。

 

(完)

 

posted @ 2021-04-11 16:10  Anonymous596  阅读(140)  评论(0编辑  收藏  举报