关于httpsessin

问题描述

我们知道一个网站社区的在线人数统计是不可能精确的,能做的就是尽量把session-timeout缩短,例如 <session-config> <session-timeout>15</session-timeout></session-config>请问这个15分钟是从什么时候开始计时?问题补充:如果是从进入网站打开网页时,那么我在这个网站活动15分钟后就意味着要重新登陆?问题补充:这个问题被管理员搞在这里来了,要是论坛讨论多反便嘛!---------------------------------人数统计可以使用session的监听器来实现---------------------------------用户关闭浏览器而不选择退出,服务端的sessin还在啊问题补充:亲爱的totong高人,我恨不得把所有的积分都送给你,其实还是送给你了,我只有10分

解决方案

session确实还在,但是session监听接口里面有两个方法,你可以进行覆盖,一个方法是session创建时调用,一个是session销毁时调用。这两个方法你可以配合application scope使用,在线不可能那么精确的。对于直接关闭浏览器的用户,你可以onbeforeunload事件里面通过ajax通知服务器用户退出,对于其它的(关闭计算机,蓝屏,自动重启...)就没有办法了。
解决方案二:
session有一个最后访问时间,每次访问都会刷新这个时间,session timeout的设置是指当前时间与最后访问时间的差大于这个,就应该销毁对应的session。人数统计可以使用session的监听器来实现,并不一定非要缩短session timeout的时间。重新登录这个问题,可以使用cookie来解决,一般网站都实现了cookie登录的功能
解决方案三:
看来LZ是没有弄懂session timeout的意思啊。session timeout是指如果用户该会话session在指定时间(如15分钟)没有与服务器发生任何连接操作,此时session就会timeout。只要你在15分钟内与服务器交互一下就可以了,不会出现每15分钟重新登陆的,那还不烦死?呵呵
解决方案四:
从你进入网站打开网页时.

时间: 2024-08-18 10:34:27

关于httpsessin的相关文章