nginx反向代理配置问题
A>B的中转转发
实现访问A:8090/tgzxhd/xxx 转发到B本地:8888/xxxxxxx
server {
listen 8090;
server_name A的公网IP;
location /tgzxhd {
proxy_pass http://B的内网IP:8080/tgzxhd/;
proxy_redirect default;
proxy_set_header Host $host:$server_port;
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_connect_timeout 30s;
proxy_send_timeout 60s;
proxy_read_timeout 60s;
}
}
server {
listen 8080;
server_name localhost;
location /tgzxhd {
proxy_pass http://127.0.0.1:8888/;
proxy_redirect default; # B用default,极简
proxy_set_header Host $host:$server_port; # 必须配
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;
}
# 保留B原有8080根路径配置
}
两条避免返回3XX重定向问题以及反向代理必加的传递真实请求的问题
proxy_redirect default;
proxy_set_header Host $host:$server_port;
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;
本帖子也是纯手工制作,转载请标明出处-----------burukku(づ。◕ᴗᴗ◕。)づ

浙公网安备 33010602011771号