主题
Nginx
Nginx 是常用的 Web Server、反向代理和负载均衡器。
在前端和 Web 服务部署中,Nginx 最常见的职责是:
- 托管静态资源,例如 Vue、React、VitePress 构建产物。
- 反向代理 API 服务,例如 Node.js、NestJS、Java、Go 服务。
- 处理 HTTPS 证书、HTTP 到 HTTPS 跳转。
- 作为负载均衡入口,把流量分发给多台后端服务。
- 统一配置缓存、压缩、上传大小、访问日志和错误页。
请求处理流程
简化流程:
bash
client
-> server 匹配域名和端口
-> location 匹配 URI
-> static file / reverse proxy / redirect / return关键点:
server决定“哪个站点处理这个请求”。location决定“这个路径怎么处理”。root、try_files处理静态文件。proxy_pass转发到后端服务。return和rewrite处理跳转或重写。
推荐配置方式
Ubuntu 系统中常见做法:
bash
/etc/nginx/
├── nginx.conf
├── conf.d/
├── sites-available/
└── sites-enabled/建议:
- 通用配置放在
nginx.conf。 - 单站点配置放在
sites-available/<site>。 - 启用站点时软链接到
sites-enabled/。 - 每次修改后先执行
nginx -t,再systemctl reload nginx。
