Lazy loaded image
🌐Nginx反向代理完整配置指南
字数 1070阅读时长≈ 3 分钟
2026-10-17
2026-10-17

Nginx反向代理完整配置指南(我用了5年的实战经验)

我用 Nginx 跑了 5 年网站,从个人博客到生产环境,踩过很多坑。这篇是我整理的最全的 Nginx 反向代理配置指南,新手也能学会。

一、Nginx 是什么?为什么要用反向代理?

Nginx 是什么?
Nginx 是一个 Web 服务器,也是反向代理服务器。
简单说,Nginx 就是网站的"前台",所有用户的请求都先到 Nginx,然后 Nginx 再把请求转发给后面的应用(比如 Node.js、Python、Java)。
为什么要用反向代理?
  1. 隐藏后端服务:用户不知道你后面跑的是什么应用,更安全
  1. 负载均衡:如果有多个后端服务,Nginx 可以把请求分发到不同的服务器
  1. SSL 终止:HTTPS 证书只需要在 Nginx 上配,后端不用管
  1. 缓存静态资源:Nginx 可以缓存静态文件,速度更快
  1. 统一入口:多个应用,用不同的路径,统一用 Nginx 暴露出去

二、安装 Nginx

Ubuntu/Debian
CentOS

三、基础反向代理配置

配置文件位置
  • 主配置文件:/etc/nginx/nginx.conf
  • 站点配置:/etc/nginx/conf.d/ 或者 /etc/nginx/sites-available/
最简单的反向代理配置
参数解释:
  • listen 80:监听 80 端口(HTTP)
  • server_name example.com:你的域名
  • proxy_pass http://127.0.0.1:3000:把请求转发到后端的 3000 端口
  • proxy_set_header:传递一些头信息,让后端知道真实的用户 IP

四、配置 HTTPS(一定要做!)

现在所有网站都要用 HTTPS,不然浏览器会提示"不安全"。
第一步:申请 SSL 证书(免费)
用 Let's Encrypt 申请免费证书:
certbot 会自动帮你配置 Nginx 的 HTTPS,不用手动改。
第二步:自动续期
Let's Encrypt 的证书 90 天到期,certbot 会自动帮你续期,不用管。

五、常用进阶配置

1. 多个应用,用不同的路径
比如你有两个应用:
  • 博客:跑在 3000 端口
  • API:跑在 8000 端口
配置:
2. 开启 gzip 压缩
压缩网站内容,速度更快:
3. 缓存静态资源
缓存图片、CSS、JS,速度更快:
4. 限制请求数(防攻击)
防止别人刷你的网站:

六、常用命令


七、踩坑提醒

  1. 改完配置一定要 nginx -t:不然配置错了,Nginx 启动不了
  1. 注意端口冲突:不要跟其他应用用同一个端口
  1. 注意防火墙:一定要开放 80 和 443 端口
  1. 注意文件权限:Nginx 要能读到网站的文件,不然会 403
  1. 日志很重要:出问题了,看日志:/var/log/nginx/error.log

八、我的常用配置

我自己的 Nginx 配置大概是这样的:

你有没有在用 Nginx?有没有什么常用的配置?欢迎在评论区分享~
上一篇
Shell脚本编程入门:写第一个自动化脚本
下一篇
AI语音助手:让电脑听懂你的话