问题场景回顾
我们公司有个CPro项目于CAS继承,继承好后,CPro 项目 运行时候有些页面访问有问题,项目莫名其妙 变了
如 我访问 http://myserver.com/Pro CAS认证成功后,访问有些项目内部重定向的页面,地址就变成了 http://myserver.com/CPro
nginx 的配置如下:
server {
listen 80;
server_name myserver.com
}
Pro / {
proxy_pass http://127.0.0.1:8080/CPro
}
Cas / {
proxy_pass http://127.0.0.1:8080/Cas
}
解决方案:修改Nginx 配置信息
server {
listen 80;
server_name myserver.com
}
Pro / {
proxy_pass http://127.0.0.1:8080/CPro;
proxy_redirect http://127.0.0.1:8080/CPro http://myserver.com/Pro;
}
Cas / {
proxy_pass http://127.0.0.1:8080/Cas;
}
是因为 访问CPro项目内有些连接地址 用了 redirect "/a" 部重定向的项目内的其他地址的时候,默认重定向的 项目名会是当前项目部署的项目名 CPo
而我们利用了nginx 做了反向代理,响应的项目地址应该是 PRO 而不是CPro