Nginx 配置速查:从入门到反向代理
最小静态站配置
server {
listen 80;
server_name coderzhang.top www.coderzhang.top;
root /var/www/coderzhang.top;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
listen 80;
server_name coderzhang.top www.coderzhang.top;
root /var/www/coderzhang.top;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
反向代理 Node.js 应用
应用跑在 3000 端口,Nginx 挂在 80 端口把请求转给它:
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
常用检查命令
nginx -t—— 检查配置语法systemctl reload nginx—— 平滑重载配置tail -f /var/log/nginx/error.log—— 实时看错误日志curl -I http://localhost—— 本机快速验证
踩坑提醒
- 改完配置一定要
nginx -t再 reload,配置写错会直接拒绝生效。 - 用
proxy_pass时尾部斜杠含义不同:/结尾会替换路径前缀。 - 修改配置文件前先备份:
cp /etc/nginx/sites-available/xxx /etc/nginx/sites-available/xxx.bak。
以上为示例文章,替换成你自己的笔记即可。