如何使用php实现禁用浏览器的后退?

  • 时间:
  • 来源:网络

   

使用php实现禁用浏览器后退的方法:1、在头部加【】标签,并安全连接【pragma: no-cache】防止浏览器缓存页面;2、用程序控制,在【】中除去【no-store】

使用php实现禁用浏览器后退的方法:

最好的方案应该是:混合运用客户端脚本和服务器端脚本。

最简单的方法是在头部加<meta>标签

<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache,no-store, must-revalidate"> 
<META HTTP-EQUIV="pragma" CONTENT="no-cache"> 
<META HTTP-EQUIV="expires" CONTENT="0">

如果使用上面的方法强制浏览器不再缓存web页面,必须注意以下几点:
只有在使用安全连接时“pragma: no-cache”才防止浏览器缓存页面。对于不受安全保护的页面,“pragma: no-cache”被视为与“expires: -1”相同,此时浏览器仍旧缓存页面,但把页面标记为立即过期。

在ie 4或5中,“cache-control”meta http-equiv标记将被忽略,不起作用。在实际应用中我们可以加上所有这些代码。然而,由于这种方法不能适用于所有的浏览器,所以是不推荐使用的。但如果是在intranet环境下,管理员可以控制用户使用哪种浏览器,我想还是有人会使用这种方法。

另外,还可以用程序控制

<?php 
header("Cache-control:no-cache,no-store,must-revalidate"); 
header("Pragma:no-cache"); 
header("Expires:0"); 
?>

如果在<META HTTP-EQUIV=”Cache-Control” CONTENT=”no-cache,no-store, must-revalidate”>header(“Cache-control:no-cache,no-store,must- revalidate”);中少了no-store就解决不了火狐的缓存了

这种方法非常有效!它强制浏览器重新访问服务器下载页面,而不是从缓存读取页面。使用这种方法时,编程者的主要任务是创建一个会话级的变量,通过这个变量确定用户是否仍旧可以查看那个不适合通过后退按钮访问的页面。

由于浏览器不再缓存这个页面,当用户点击后退按钮时浏览器将重新下载该页面,此时程序就可以检查那个会话变量,看看是否应该允许用户打开这个页面。

相关学习推荐:PHP编程从入门到精通