时间:2021-07-01 10:21:17 帮助过:1人阅读
本文实例讲述了php禁止浏览器使用缓存页面的方法。分享给大家供大家参考。具体方法如下:
页面缓存在有的时候是不需要的,我们可以禁止浏览器缓存页面。
在PHP中可以轻松的使用下面的语句实现禁止页面缓存,但比较难记特整理下,方便大家使用。
php代码如下:
代码如下:<?php
// 设置此页面的过期时间(用格林威治时间表示),只要是已经过去的日期即可。
header ( " Expires: Mon, 26 Jul 1970 05:00:00 GMT " );
// 设置此页面的最后更新日期(用格林威治时间表示)为当天,可以强制浏览器获取最新资料
header ( " Last-Modified:" . gmdate ( " D, d M Y H:i:s " ). "GMT " );
// 告诉客户端浏览器不使用缓存,HTTP 1.1 协议
header ( " Cache-Control: no-cache, must-revalidate " );
// 告诉客户端浏览器不使用缓存,兼容HTTP 1.0 协议
header ( " Pragma: no-cache " );
?>
这对于某些页面来说是很有用的,例如:单信息以及订单下的商品,并且清空购物车对应商品数据。
肯定不希望用户到了最后一个页面,都已经生成订单了,再点浏览器的返回按钮回到前一个页面。
那么在订单地址页面加入:
代码如下:header("Cache-Control:no-cache,must-revalidate,no-store"); //这个no-store加了之后,Firefox下有效
header("Pragma:no-cache");
header("Expires:-1");
这个页面不缓存了,并且有个判断购物车商品为空就跳转到空购物车的页面,那么用户点击浏览器后退,回来之后,也直接到 购物车页面了。
希望本文所述对大家的PHP程序设计有所帮助。
只要服务器端设计严谨,你再怎么在客户端搞也没意义。
页面过期是设置的http header,要想修改header那你得想法截获 http 数据通信的包,修改完了再恢复http对话,难度可不小。
而且设计者一般都在提交之后肯定就设定某个标记指明这次测试结束了,你即便能再次提交,肯定也会出现错误的,当然,不排除设计者是巨笨的那种情况。
页面加上这三行代码看行不行:
header("Expires: -1");
header("Cache-Control: no_cache");
header("Pragma: no-cache");
http://www.bkjia.com/PHPjc/907833.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/907833.htmlTechArticlephp禁止浏览器使用缓存页面的方法,php禁止缓存页面 本文实例讲述了php禁止浏览器使用缓存页面的方法。分享给大家供大家参考。具体方法...