0

我有一个 jsp 页面,它返回显示在 HTTP 页面上的内容,我的应用程序的其余部分是 HTTPS。

现在,当我在 HTTP 页面上从 HTTPS 浏览到我的 jsp 时,我丢失了我的 cookie(来自 HTTPS 的 cookie 是安全的,这在 HTTP 页面中是不允许的)。因此,我在我的 jsp 页面标题中添加了session=false,但是当我调用我的 jsp 时,我仍然收到一个 JSESSIONID,我想我不想要那个。

因为如果来自 http 页面的 jsessionid 与来自 https 的 jsessionid 不同,我就会退出。

那么如何防止 JSP 生成 JSESSIONID 呢?

ps:我使用的是tomcat 6。

4

2 回答 2

1

当您访问 JSP 页面时,该指令<@page session="false">将消除 HTTP 会话的自动创建。详见: http ://docs.oracle.com/cd/A97688_16/generic.903/bp/j2ee.htm#1008677

澄清:如果您访问创建 HTTP 会话的其他页面(或资源),然后您使用该指令访问该页面,则<@page session="false">该会话不会被破坏。

于 2013-07-01T12:51:50.687 回答
1

请验证您是否也已应用<@page session="false">到所有包含的 jsps。如果任何包含的 jsp 没有相同的页面属性,父 jsp 仍然会创建会话。

于 2016-10-08T16:14:44.350 回答