关于nginx:nginx-启动停止关闭

1次阅读

共计 1563 个字符,预计需要花费 4 分钟才能阅读完成。

应用 3A 服务器搭建的 centos 零碎装置 nginx
教程在我的往期博客中
1,nginx 指定配置文件

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
1
-c 参数 指定了要加载的 nginx 配置文件门路
1, 从容进行 Nginx:
kill -QUIT 主过程号
2, 疾速进行 Nginx:
kill -TERM 主过程号

3, 强制进行 Nginx:
kill -9 主过程号

2,应用信号治理 nginx 的 master、worker 过程
立即进行服务:
nginx -s stop 或者
kill -SIGTERM $(cat /data/services/nginx/logs/nginx.pid)

优雅进行服务:
nginx -s quit 或者
kill -QUIT $(cat /data/services/nginx/logs/nginx.pid)

重载配置文件(master 不退出,从新加载 worker 过程):
nginx -s reload
kill -SIGHUP $(cat /data/services/nginx/logs/nginx.pid)

从新开始记录日志文件:
nginx -s reopen 或者
kill -USR1 $(cat /data/services/nginx/logs/nginx.pid)

热降级 nginx 服务(次要是二进制 nginx 文件):
kill -USR2 old_master_process #将新的申请适度到新的 master 过程中去
kill -WINCH old_master_process #优雅敞开所有 work 过程

nginx reload 流程
(1) 向 master 过程发送 HUP 信号 (reload 命令)
(2)master 过程校验配置文件语法是否正确
(3)master 过程关上新的监听端口
(4)master 过程用新配置启动新的 worker 子过程
(5)master 过程向老 worker 子过程发送 QUIT 信号
(6) 老 worker 过程敞开监听句柄,解决完以后连贯后完结过程

nginx 热降级流程
(1) 将旧 nginx 文件换成新 nginx 文件
(2) 向 master 过程发送 USR2 信号
(3)master 过程批改 pid 文件名,加后缀 .oldbin
(4)master 过程用新 nginx 文件启动新 master 过程
(5) 向老 master 过程发送 WINCH 信号,敞开老 worker
(6)回滚:向老 master 发送 HUP,向新 master 发送 QUIT
3, 当用 systemctl 启动服务时,报 start-pre 时,能够思考下 /var/tmp 是否存在
nginx.service failed to run‘start-pre’

启动脚本:

cat >> nginx.service << EOF
[Unit]
Description=nginx web server
Documentation=http://nginx.org/en/docs/
After=network.target remote-fs.target nss-lookup.target

[Service]

Type=forking
User=root
Group=root
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
KillSignal=SIGQUIT
PrivateTmp=true

正文完
 0