Nginx反向代理端口丢失
0. 故障现象
输入url: http:/xxx.xxx.xxx.xxx:777/aaa/ 可以正常访问到登录页面
输入用户名密码后,页面跳转.
跳转后url: http:/xxx.xxx.xxx.xxx/aaa/main.do?method=main 无法正常显示页面
手工将url改为 http:/xxx.xxx.xxx.xxx:777/aaa/main.do?method=main 可以正常访问页面
1. 解决故障
在配置中加上
proxy_set_header Host $host:$server_port;
跳转正常了.
2. Nginx配置文件
upstream pana {
server 192.168.31.70:8088 max_fails=1 fail_timeout=10s;
}
server {
listen 777;
server_name pana.cn;
charset utf-8;
access_log logs/host.access.log main;
location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host:$server_port; #加上这句
proxy_pass http://pana/; #用了upstream如果单机直接这里跳转即可
proxy_redirect default;
}
}
3. 结果
输入url: http:/xxx.xxx.xxx.xxx:777/aaa/ 可以正常访问到登录页面
输入用户名密码后,页面跳转.
跳转后url: http:/xxx.xxx.xxx.xxx:777/aaa/main.do?method=main 可以正常访问页面
后续跳转均正常