Nginx 操作保命指南

推荐变更顺序

sudo nginx -t
sudo systemctl reload nginx
systemctl status nginx --no-pager
curl -vk https://example.com/api/health
  1. 编辑前保存配置或确保由 Git 管理。
  2. nginx -t 检查语法和引用文件。
  3. 优先 reload,让新 Worker 使用新配置、旧 Worker 收尾。
  4. 验证静态页面、API、错误路径和日志。

nginx -t 通过不代表业务正确:错误的 upstream、location 优先级、proxy_pass 尾斜杠、Header、证书域名都可能语法合法。

常见状态

sudo nginx -T
journalctl -u nginx --since '15 minutes ago'
tail -n 100 /var/log/nginx/error.log

nginx -T 会输出完整配置,可能包含内部路径等信息,分享前脱敏。

reload 与 restart

配置更新优先 reload;二进制异常、服务状态损坏或不支持 reload 的变更才考虑 restart。无论哪种都要检查旧 Worker 是否长期不退出以及业务入口是否正常。