我使用wamp服务器为我的PHP脚本。我在登出代码上遇到了困难。 每次我点击退出链接,然后点击网络浏览器上的后退按钮,它仍会显示只能由登录用户访问的页面。 我在index.php的开头有这个代码,它由注销链接调用以销毁会话:
<?php
session_start();
session_destroy();
?>
我在用户页面的开头有这个:
<?
session_start();
if(!session_is_registered(myusername)){
header("location:login.php");
}
?>
我不知道为什么在用户注销后仍然可以访问用户页面。
另一个注意事项是禁用后退按钮可以解决问题 请帮忙。
答案 0 :(得分:9)
您应该将页面设置为不可缓存,如下所示:
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Thu, 15 Apr 2010 20:00:00 GMT");
这样客户端应该在回击时重新请求页面,从服务器获取一个新的“注销”版本。
另外请注意,不要永远弄乱客户端的按钮,他们希望它们以某种方式工作,最好让您的网站表现得像99.999%的互联网并且不会破坏他们的体验
答案 1 :(得分:0)
要阻止浏览器缓存页面,请在html或php文件的head标记中添加这两行代码(如果使用html)
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="expires" CONTENT="0">