打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
apache 反向代理 session cookie丢失问题

今天部署IBM的一个项目,用到了反向代理,其它一切正常,就是登录时经常session失效,郁闷了老半天了。终于在网上找到了答案。谢谢两位大神哥了


1.出处:://blog.sina.com.cn/s/blog_02e45c9b01011khc.html:


被apache mod_proxy反向代理tomcat session丢失问题折腾了两个晚上。

关键在于tomcat 中的应用context 路径是 /portal , 而外部访问 context 路径是 / , JSESSIONID 的值从浏览器经过反向代理到达tomcat时, 由于cookie时内外路径不一致, 使tomcat每次重写设置 JSESSIONID 的值,导致session丢失现象,在apache VirtualHost中需要通过 ProxyPassReverseCookiePath 指令做一个路径映射,详细如下:
 

  ProxyPreserveHost On
   ProxyPass / ://localhost:8080/portal/
   ProxyPassReverse / ://localhost:8080/portal/
   ProxyPassReverseCookieDomain locahost www.domain.cn

   ProxyPassReverseCookiePath /portal /


2.出处:://www.myexception.cn/apache/476201.html


解决apache反向代理后“session”保持不住的问题
其实很简单,但是又浪费了多少青春,大把大把的时间。

有关apache的mod_proxy模块,设置反向代理时,如果指向的是
/ -> /foo, 这个时候JSESSIONID的path会被默认设置成/foo,导致请求时不会被接受此id,造成sesssion不断被刷新,所谓的保持不住session的现象。

解决办法非常简单:
ProxyPassReverseCookiePath /foo /

唉,绕弯绕来绕去,还是要苦读manual。


因本服务器流量限制,当前阅读话题的部分内容,请登录阅读话题更多内容!

原文地址:http://my.oschina.net/u/109101/blog/97019
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
用mod
Tomcat禁用cookie时没有自动URL rewriting,没有加上jsessionid?
session功能实现原理
jsp/servlet 深入解析session本质
Session原理和Tomcat实现分析
跨域访问时Session丢失
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服