Nginx 配置速查
nginx.conf
反向代理与静态服务常用配置项:worker、server/location、upstream、超时与限流。
# Nginx 配置速查
## 核心结构
配置由 main → events → http → server → location 逐层嵌套,指令的作用域由所在层级决定。
## 高频配置项
- worker_processes:工作进程数,常设为 auto 或与 CPU 核数一致
- worker_connections:单进程最大连接数,需与系统的 fd 上限匹配
- listen:绑定地址与端口,可带 ssl、http2 等参数
- server_name:匹配 Host,多个站点靠它分流
- location:按路径前缀或正则分流到不同处理逻辑
- proxy_pass:转发到上游,可带 URI 替换
- root 与 alias:静态资源根目录,二者语义不同
- try_files:按顺序尝试文件,最后一项常作回退
## upstream 与超时
upstream 定义后端组,配合 proxy_next_upstream 控制重试;proxy_connect_timeout、proxy_read_timeout、proxy_send_timeout 分别管建连、读、写。超时设太短会把慢请求打成 504,太长则占住 worker。
## 常见坑
- root 与 alias 混用导致路径拼错,静态资源 404
- location 匹配顺序搞错:精确匹配优先,其次前缀最长匹配,再是正则,最后才是普通前缀
- 反向代理后应用拿到的是本机地址,需要正确透传真实客户端地址头
- 上传大文件忘记调大请求体上限,默认只有 1MB
- 改了配置没 reload,或者 reload 前没做语法校验
## 排查看什么
用 nginx -t 验语法、access_log 与 error_log 看实际命中哪个 location、curl -I 看响应头确认是否走到预期分支。