我有这个大问题。每次我向服务器发出新请求时,我当前的会话都会消失。
我查过很多地方。我找不到问题所在。我还包括了
tomcat 和应用程序中 web.xml 中的 session-config 。我还启用了我的浏览器接受 cookie。在每个浏览器中进行了测试。它不起作用。
我只是使用 JSP/Servlet 开发一个简单的 java ee 应用程序。仅当我部署到服务器计算机中的 tomcat 后,我才遇到此问题。
造成这种情况的一个可能原因是具有“裸”主机名(即没有域部分的主机名)。如果您在内联网中工作,这种情况相当常见。
问题是几乎所有浏览器 cookie 都不会接受没有域名的主机名 cookie。这样做是为了防止evilsite.com
从设置 Cookie 开始com
(这会很糟糕,因为它将是最终的跟踪 cookie)。
因此,如果您通过以下方式访问您的应用程序http://examplehost/
它不会接受任何cookie,而对于http://examplehost.localdomain/
它会很好地接受(并返回)cookie。
令人讨厌的是,服务器无法区分“浏览器获取了 cookie 并忽略了它”和“浏览器从未获取过 cookie”。因此,每次访问对于服务器来说都像是一个全新的会话。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)