发布网友 发布时间:2022-12-03 20:47
共1个回答
热心网友 时间:2023-11-18 22:55
方法如下:一、1.当你点击退出系统是,不直接返回登录界面,而是通过window.location.href返回登录界面。2..或者在每张页面都有session判断,如果session为空则返回登录界面二、1.浏览器缓存我们有时候会发现是退出系统了可是通过历史记录或者直接访问地址,最后一次操作的数据或显示的列表还在那里,一堆人在冒汗,说你系统不安全!其实这时候并没有访问到系统,是本地的浏览器缓存在做怪。2.没有做权限拦截很多人在做程序的时候可能会忘记去注意权限分配了,有些功能是要求用户在登录状态下使用的,甚至是某个角色的用户才可以操作的。如果没有做这些*,很容易被人利用,最简单的就是通过地址直接访问。这两个方面内容是造成问题出现的绝大部分原因.解决方案:1.禁止缓存如:jsp<%response.setHeader("Pragma","No-Cache");response.setHeader("Cache-Control","No-Cache");response.setDateHeader("Expires", 0);%2.利用session在页面进行拦截如:jsp原码String userid= (String)session.getValue("userid");if(userid==""||userid==null)//判断指定session值的存在与否,来检查是否已经登录{跳转到提示页面}else{其他主体程序代码}利用以上两个方法同时使用,能够解决大部分问题,包括浏览器返回的问题。3.利用struts配置*