web服务器 技术随笔

Linux/CentOS 下 Nginx 启动、停止与平滑重启命令速查

在 CentOS 服务器上维护 Nginx 时,最常用的操作就是启动、停止、平滑重启(重新加载配置)。下面按“先确认路径,再执行命令”的顺序整理成速查手册。

一、找到 Nginx 可执行文件

不同环境安装路径不同(常见为 /usr/local/nginx/sbin/nginx/alidata/server/nginx/sbin/nginx)。先确认路径:

which nginx          # 查看已加入 PATH 的可执行文件
ps -ef | grep nginx  # 查看正在运行的 nginx 进程及启动参数

下文统一用 nginx 表示可执行文件;若未加入 PATH,请写完整路径,如 /usr/local/nginx/sbin/nginx

二、启动

nginx                                  # 使用默认配置启动
nginx -c /usr/local/nginx/conf/nginx.conf   # 指定配置文件
nginx -t                                # 启动前先测试配置文件是否正确

三、停止(向 master 进程发信号)

ps -ef | grep nginx         # 找到 master process 的 PID
kill -QUIT 主进程号          # 从容停止(处理完现有请求再退出)
kill -TERM 主进程号          # 快速停止
pkill -9 nginx              # 强制停止(慎用)

如果 nginx.conf 中配置了 pid 文件路径,可直接读取该文件中的 PID 再发送信号。

四、平滑重启(重新加载配置)

修改配置后无需停服务,直接让 Nginx 重新加载:

nginx -s reload             # 等价于 kill -HUP 主进程号

执行前建议先检查配置:

nginx -t
nginx -t -c /usr/local/nginx/conf/nginx.conf

五、-s 参数完整说明

nginx -s stop    # 快速停止
nginx -s quit    # 从容停止
nginx -s reload  # 重新加载配置
nginx -s reopen  # 重新打开日志文件
标签
NginxCentOS运维