我有一个简单的问题: 如何设置会话超时?目前看来我的会话在最大之后就过期了。 60分钟,但我以为我已经定义了10个小时......
在我的 shiro.ini 中我有这个:
sessionManager =org.apache.shiro.web.session.mgt.DefaultWebSessionManager
sessionManager.sessionIdCookie =$sessionIdCookie
sessionManager.sessionIdCookieEnabled =true
securityManager.sessionManager= $sessionManager
# 3,600,000 milliseconds = 1 hour -> set to 10 hours
sessionManager.globalSessionTimeout= 36000000
web.xml 中是否还需要定义任何内容,例如:
<!-- sets the default session timeout to 480 minutes. -->
<session-config>
<session-timeout>480</session-timeout>
</session-config>
pac4j
ShiroSessionStore
依赖于 Shiro 会话:SecurityUtils.getSubject().getSession(createSession)
,因此它应该按照定义过期。打开 DEBUG
登录 org.pac4j
看看发生了什么。