Nginx 配置与命令速查表

把 Nginx 最常用的命令、location 匹配规则、反向代理片段和日志排查整理成一页,改配置和查 502 时直接对照。

Web 服务·共 19 条命令·最后更新 2026-06-30
返回 Web 服务

命令与测试 5

nginx -t
测试配置语法,改完必跑再重载
nginx -s reload
平滑重载配置,不断连接
nginx -T
打印完整生效配置,排查 include 冲突
systemctl restart nginx
完整重启(会断连接),一般用 reload
nginx -V
查看编译参数和已启用模块

location 匹配优先级 5

location = /path
精确匹配,优先级最高
location ^~ /static/
前缀匹配且命中后不再查正则
location ~ \.php$
区分大小写的正则匹配
location ~* \.(jpg|png)$
不区分大小写的正则匹配
location /path
普通前缀匹配,优先级最低

反向代理片段 5

proxy_pass http://127.0.0.1:8080;
转发到后端,注意结尾斜杠影响路径
proxy_set_header Host $host;
透传原始 Host 头
proxy_set_header X-Real-IP $remote_addr;
透传真实客户端 IP
proxy_read_timeout 60s;
后端响应超时,长请求 502 时调大
client_max_body_size 50m;
允许的最大上传体积,413 报错时调大

日志与排查 4

tail -f /var/log/nginx/error.log
跟踪错误日志,502/504 先看这里
tail -f /var/log/nginx/access.log
跟踪访问日志
grep " 502 " /var/log/nginx/access.log
筛出 502 请求
curl -I http://localhost
只看响应头,快速验证服务

💡 提示

  • proxy_pass 结尾带不带斜杠语义完全不同:带 / 会替换 location 前缀,不带则原样拼接。
  • 改完配置先 nginx -t 再 reload,语法错时 reload 不会生效但旧进程继续跑。
  • 502 先看 error.log:connection refused 是后端没起,timeout 是后端太慢。