问题描述:
整合 shiro 后,访问 localhost:8080 应该跳到 login.jsp 页面,但是给报了个 400,地址也转跳到了:http://localhost:8080/login;jsessionid=A9FB253EFF38D1D4F5AC835C36504DEB,自动在请求地址 url 中添加 jsessionid
- 截图如下:
解决方案一:
在 web.xml 中添加:
<session-config>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
解决方案二:
在配置文件中添加这段代码:
<!-- 会话管理器 -->
<bean id="sessionManager" class="org.apache.shiro.web.session.mgt.DefaultWebSessionManager">
<!-- session的失效时长,单位毫秒 -->
<property name="globalSessionTimeout" value="600000"/>
<!-- 删除失效的session -->
<property name="deleteInvalidSessions" value="true"/>
<!--
解决方案:
去掉URL中的JSESSIONID
-->
<property name="sessionIdUrlRewritingEnabled" value="false" />
<!-- 定时检查失效的session -->
<property name="sessionValidationSchedulerEnabled" value="true" />
</bean>
如果文章对你有帮助,麻烦来个一键三连,谢谢。