我的Apache Tomcat运行在通过mod_jk连接的Apache httpd web服务器后面。
当浏览器请求https页面(而不是http)作为其第一个会话请求时,Tomcat会发送一个带有安全标志的会话cookie,使用户登录的会话稍后无法用于http页面。
如何使用mod_header删除会话cookie的安全标志?
我已经尝试在web.xml中添加一个选项,如下所示。
<session-config>
<cookie-config>
<secure>false</secure>
</cookie-config>
</session-config>
然而,它不起作用。我想这个选项不会使servlet请求不安全,Tomcat将在会话cookie上设置安全标志,除非上下文的会话配置和servlet请求都不安全。
这是我自己目前添加到httpd-vhost.conf
的解决方案:
Header edit* Set-Cookie "(JSESSIONID=.*)(; Secure)" "$1"