关于Session丢失的问题

最近一个项目出现一个问题,频繁被踢出:就是在过滤器检测到Session 过期,这时间不固定,偶尔很频繁。有时一天都没事儿。很肯定程序中的Session设置的过期时间是两个小时。偶尔被踢出是五分钟,有时甚至登陆上去一操作,这时候过滤器都检查到Session中用户登陆信息没有了。网络方面:最后面是防火墙,然后是F5。以为是F5的问题,所以就搭建了个测试环境,在F5之外。但是还是偶尔有这样的情况。大家有遇到过这样的,网络方面我也不太太懂,所以现在他们把原因归结到程序原因,但是程序我在本地测试没有一点儿问题的。所有熟悉网络的朋友大家遇到过这样的情况吗?防火墙?F5?

你好,楼主你本地测试OK,是不是存在跨域访问的问题啊,或者是不是你的页面用了iframe啊。这两种原因都可能导致session丢失,特别是在IE环境下。我之前也遇到过类似的问题,在firefox和chrome都OK,然后即IE下session是空的。后来在session存储的时候给加了p3p设置就OK了。楼主你试试喽,先别着急,确定是不是问题发生的环境,找到原因就很好解决了,希望对你有帮助

先说说系统的整个架构呗,如果是apache加多个tomcat,各tomcat采用session复制的话,会有session丢失的情况。还有session是否做了持久化?是持久化到文件系统还是数据库?如果没有做持久化,都是在内存中保存的话,负载很高的时候也有可能会丢失session。如果真是因为session丢失的话,一般tomcat日志文件中会有记载,可以查一下应用服务器的日志,看是否能有什么发现。

这确实是个值得深究的问题,LZ解决了不要忘了公布解决方案

如果是集群的话,你要考虑WEB服务器的session共享问题,
假如: A用户访问集群的 NODE1节点 第二次又来到NODE2节点

由于NODE2没有NODE1的session信息 当然就过期了!

你的 f5 有没有配置 持续化选项,一般选择 cookie比较好,我们单位 的网络就是防火墙、f5、java服务器,这么运行都没有问题。

这个说的好像很有道理。建议大家看到最后。

asp.net chrome浏览器无法使用session的原因和解决办法

http://www.suchso.com/projecteactual/aspnet-chrome-cookie-session-id.html