日期:2014-05-16  浏览次数:20966 次

Apache和Tomcat利用Proxy代理保持Session

?? ? ? 当Tomcat中的应用被apache mod_proxy反向代理后,tomcat session就会丢失

? ? ? 关键在于tomcat 中的应用context 路径是 /portal , 而外部访问context 路径是 / ,JSESSIONID 的值从浏览器经过反向代理到达tomcat时,由于cookie时内外路径不一致,使tomcat每次重写设置JSESSIONID 的值,导致session丢失现象,

? ? 在apache VirtualHost中需要通过ProxyPassReverseCookiePath? 指令做一个路径映射,详细如下:
??? ProxyPreserveHost On
??? ProxyPass / http://localhost:8080/portal/
??? ProxyPassReverse / http://localhost:8080/portal/
??? ProxyPassReverseCookieDomain locahost www.domain.cn
??? ProxyPassReverseCookiePath /portal /

?

?