我的春季安全注销配置:
<security:logout logout-success-url="/login.htm" invalidate-session="true"/>
在我的JSP中,我提供了
&LT; a href="j_spring_security_logout">Logout</a>
当我点击“退出”按钮时,它会重新定向到我的登录页面。但是当我尝试通过提供网址进入我的欢迎页面时,它允许我。只有当我再次引用该页面时,它才会提示我输入凭据
如何解决这个问题?
答案 0 :(得分:4)
听起来好像您在注销后可以看到缓存的欢迎页面。
为防止缓存,您可以向Spring调度程序配置添加interceptor,这将设置某些标头告知浏览器不要缓存。您可以将拦截器应用于所有.htm
页面 - 或者如果需要,只应用于子集。要应用于所有.htm
页:
<mvc:interceptor>
<mvc:mapping path="/**/*.htm" />
<bean class="org.springframework.web.servlet.mvc.WebContentInterceptor">
<property name="cacheSeconds" value="0"/>
<property name="useExpiresHeader" value="true"/>
<property name="useCacheControlHeader" value="true"/>
<property name="useCacheControlNoStore" value="true"/>
</bean>
</mvc:interceptor>
答案 1 :(得分:0)
在head标签中添加此项以禁用缓存为我解决了问题
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="Sat, 01 Dec 2001 00:00:00 GMT">