12
回答
Tomcat 7 Session问题,大家进来帮解决下!
注册华为云得mate10,2.9折抢先购!>>>   

我想问一个关于tomcat7的问题
现有目录: test ROOT 二个,都是在同级目录,ROOT是网站的根目录,访问根目录里的文件session就每刷新一下session ID都不一样,但是通过http://webhost/test/ 访问test里的文件session ID就不会变,但是把test放在ROOT里,通过http://webhost/test/ 访问session ID还是会变,基本上是访问ROOT同级目录的文件session才是正常的,否则都是刷新一下变一下,不知道什么问题。

举报
人人
发帖于8年前 12回/2K+阅
共有12个答案 最后回答: 8年前

没碰到过这样的问题,是不是两个应用上有什么特殊的处理?

另外 Tomcat 7 目前还是处理开发版状态,不要在生产环境中使用。

没有什么特别处理,我是试出来的,只要和ROOT同级目录的session ID就正常,ROOT目录下的每刷新一次就变,我用TOMCAT自代的管理程序看session是存在的,只是每刷新一次就把你判断成一个新用户!

红薯大哥,又发现新问题了,上面所说的问题在ff下一切正常,只是在IE下面就会有这个问题,郁闷了。

引用来自#6楼“人人”的帖子

红薯大哥,你英文好,帮我去提交一下这个BUG吧,IE下主目录下session丢失,FF下一切正常。

这个肯定不是bug,因为我这里不会这样。

经过测试发现,的确IE8存在此问题,但是 FireFox 没问题!

我一直使用FF,所以没注意到这个问题。

经过跟踪发现,两个版本的 Tomcat 生成的 Cookie 是不同的:

Tomcat 7: Set-Cookie: JSESSIONID=E33BFF1384284F317D75025391BF5CB3; Path=""; HttpOnly
Tomcat 6: Set-Cookie: JSESSIONID=F6EB3C21AC71EC2AA305A2BBEE37DBE9; Path=/

已经向 Tomcat 提交了这个bug:

https://issues.apache.org/bugzilla/show_bug.cgi?id=49525

再次测试发现,所有的IE都有问题

我觉得问题的关键在于 Set-Cookie 中最后的那个 HttpOnly 的关键字,IE 是不是不支持。

哈哈,说明不是我这里的问题了,很奇怪的是访问ROOT同级目录的资源就一切正常。

感觉跟IE没关,红薯大哥可以测试下,在ROOT同级目录建个目录访问下就知道了。

顶部