Nginx 反向代理
Nginx 除了作为 Web 服务器,还常被用作 反向代理服务器。
反向代理隐藏了后端服务器的实际地址,提升了 安全性、可扩展性和缓存能力。
✨ 反向代理配置示例
1. 基本代理
nginx
server {
listen 80;
location / {
proxy_pass http://127.0.0.1:8080;
}
}- 用户请求
http://yourdomain.com - 实际转发到
http://127.0.0.1:8080
2. 保留客户端真实 IP
nginx
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}3. 代理静态和动态分离
nginx
server {
location /static/ {
root /var/www/html;
}
location / {
proxy_pass http://127.0.0.1:8080;
}
}🚦 应用场景
- 提供统一入口
- 隐藏真实后端 IP
- 支持动静分离、缓存
