pass到Tomcat的session失效问题解决

一直以来我都是用nginx/1.9.2(Linux)来作为web服务器和代理服务器来使用,都是一个应用对应一个二级域名。

近期在部署一个统一管理后台的时候,用户登录进入后台时出现异常,拦截器找不到登录的用户信息,检查了用户是否登录成功,session是否写入成功,都没问题,经调试发现是request请求变成了多个,并且session也不一致,感觉就像是另一个浏览器在访问,得出结论:肯定是session丢失了!

原因

经过认真的分析,得出结论:问题出在Nginx的配置上!

server_name blog.abc.com; listen 80; location / { proxy_pass http://127.0.0.0:8080/blog/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } 解决方案 server_name blog.abc.com; listen 80; location / { proxy_pass http://127.0.0.0:8080/blog/; proxy_cookie_path /blog/ /; proxy_set_header Host $host; proxy_set_header Remote_Addr $remote_addr; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }

重启服务,测试!
通过!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/f4887eb2bc50bb466b4ad3ff300f5705.html