session失效之后重新登录,点击失效之前的菜单依旧返回登录页面
2017-12-17 15:33
465 查看
框架是SpringMVC+Spring-security+freemarker
错误分析:正常来说,session失效的时候服务器后台会将失效的sessionId发送给前端的浏览器并作为cookie存储起来,这样cookie也会马上失效。但是发生以上的问题
经过日志跟踪发现session失效的时候,产生了一个未知的cookie,这个cookie并不是由服务器端传到浏览器的,这样就导致session失效了,但是点击失效链接产生的cookie却不生效,只有清除浏览器缓存或者关闭浏览器才会失效,所以导致了如标题所述的问题。
解决方法:在web.xml中我配置的servlet-mapping为:
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/ps-admin-nimitz/*</url-pattern><!-- 注意这里就是URL拦截配置 -->
</servlet-mapping>
由于我的一级菜单比较多,所以我的URL并不是直接用 /ps-admin-nimitz/hello.do,而是在ps-admin-nimitz和hello.do之间加了一个一级菜单的名称,例如 /ps-admin-nimitz/consumer/hello.do,经过验证就是由于加了这个consumer导致了以上的问题,所以去掉consumer即可。
错误分析:正常来说,session失效的时候服务器后台会将失效的sessionId发送给前端的浏览器并作为cookie存储起来,这样cookie也会马上失效。但是发生以上的问题
经过日志跟踪发现session失效的时候,产生了一个未知的cookie,这个cookie并不是由服务器端传到浏览器的,这样就导致session失效了,但是点击失效链接产生的cookie却不生效,只有清除浏览器缓存或者关闭浏览器才会失效,所以导致了如标题所述的问题。
解决方法:在web.xml中我配置的servlet-mapping为:
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/ps-admin-nimitz/*</url-pattern><!-- 注意这里就是URL拦截配置 -->
</servlet-mapping>
由于我的一级菜单比较多,所以我的URL并不是直接用 /ps-admin-nimitz/hello.do,而是在ps-admin-nimitz和hello.do之间加了一个一级菜单的名称,例如 /ps-admin-nimitz/consumer/hello.do,经过验证就是由于加了这个consumer导致了以上的问题,所以去掉consumer即可。
相关文章推荐
- session失效之后重新登录,点击失效之前的菜单依旧返回登录页面
- 拦截器处理session失效返回登录页面
- 拦截器处理session失效返回登录页面
- session失效后框架体系中不能返回登录页面
- 使用filter使session失效的用户,重新跳转到登录页面
- 当session失效后,无论点击那个页面,都找到顶端页面,跳到登录页面
- magento登录之后返回登录之前页面
- React页面登录之后返回之前浏览页面
- session失效强制重新登录
- 解决用户注销后点击浏览器返回刷新页面重复登录的问题
- frameset框架中session失效后重定向到登录页面
- shiro修改没有登录或者session失效,根据ajax返回json
- iframe请求失效重新登录后直接跳转到请求内容页面的解决方案
- springmvc控制登录用户session失效后跳转登录页面
- session过期 ajax访问不能返回登录页面问题
- Asp.net Session失效,在包含iframe的页面中跳转至登录窗口
- session失效时,解决登录页面嵌套框架问题
- frameset框架中session失效后怎样重定向到登录页面
- 解决登陆经常提示:你登录时间过长,请重新返回登录页面进行登录
- 使用frameset,怎么在session,timeout后,点击任何链接都能整体返回index页面