众所周知,当用户登录网站后较长一段时间没有与服务器进行交互,将会导致服务器上的用户会话数据(即session)被销毁。此时,当用户再次操作网页时,如果服务器进行了session校验,那么浏览器将会提醒用户session超时。
下面说一下如何解决用户登录后较长时间未操作而导致的session失效的问题?
一般情况下下,我们首先想到的是,通过改变服务器的配置,延长服务器的session超时时间。
在Tomcat服务器和项目的的web.xml文件中有如下节点内容:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
这里的30表示session的超时时间,单位为分钟,如果用户登录后在30分钟内没有与服务器交互,那么当前用户的session将失效。我们可以配置一个更大的数值(比如60),就可以延长session的超时时间,如果将该值改为0或负数的话,则表示session永不失效。