我需要在单个物理盒子中运行多个 tomcat 服务器。在从浏览器访问这些应用程序时,当用户在应用程序之间切换时,会导致用户注销之前访问的应用程序。这是因为 JSESSIONID cookie 冲突。
一种可能的解决方案是在不同的上下文中运行每个应用程序。不幸的是,我的应用程序将无法在上下文路径设置中工作,因为没有任何资源是通过在前面加上 request.getContextPath() 来访问的。
这使我需要更改 cookie JSESSIONID 的名称来解决冲突。有没有办法做到这一点?如果是,如何?
希望我清楚地陈述我的问题。
注意:我所有的应用程序都在同一台机器的不同端口上运行。
原文由 ramanr 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用 Servlet API 3.0 一切都变得简单多了。
现在你可以在你的 web.xml 中配置它:
而已!