nginx的启动 、 停止、重载命令
Nginx 启动、停止、重载 3 组命令一次记牢——全部围绕 nginx 可执行文件 + 信号 完成,Linux、macOS、Windows 通用,只是路径不同。
- 确认 nginx 在 PATH
which nginx # 常见 /usr/sbin/nginx 或 /usr/local/nginx/sbin/nginx
- 启动(start)
nginx # 直接启动,后台守护
# 或指定配置
nginx -c /etc/nginx/nginx.conf
- 优雅停止(graceful stop)
nginx -s quit # master 等待 worker 处理完当前连接后退出
- 立即终止(force stop)
nginx -s stop # 向所有 worker 发 SIGTERM,立即断连接
- 平滑重载(reload 配置,零中断)
nginx -s reload # 重新解析配置,启动新 worker,旧 worker 优雅退出
- 先检查再重载(生产常用脚本)
nginx -t && nginx -s reload
- 重启(两条命令组合)
nginx -s quit && nginx # 优雅重启
- 信号对照表(了解即可,
-s
是封装)
下面把刚才那张「信号对照表」重新排成真正的 Markdown 表格,方便你直接复制粘贴或查看。
命令 | 发送的信号 | 效果说明 |
---|---|---|
nginx -s stop | SIGTERM | 立即终止所有 worker,连接直接断开 |
nginx -s quit | SIGQUIT | 优雅退出:master 通知 worker 处理完当前连接后再退出 |
nginx -s reload | SIGHUP | 平滑重载配置:启动新 worker,旧 worker 优雅退出 |
nginx -s reopen | SIGUSR1 | 重新打开日志文件(常用于日志切割) |
这样就是标准 Markdown 表格,在多数笔记/文档里都能正确渲染。
- Systemd 场景(CentOS 7+/Ubuntu 16+)
systemctl start nginx
systemctl stop nginx
systemctl reload nginx # 等价于 nginx -s reload
systemctl restart nginx # restart 会中断连接
记住 3 个高频动作即可:
• 启动 → nginx
• 重载配置 → nginx -t && nginx -s reload
• 优雅停止 → nginx -s quit