在php中禁止页面缓存的代码相当简单,只要利用 php header()浏览器发送一个Cache-Control: no-cache或设置页面缓存过期时间为你今天之前就可以了。
有朋友说给出下面这句最简单的禁止页面缓存的方法,代码如下:
header("Cache-Control: no-cache, must-revalidate");
这里我先给一段可以使用的php代码,代码如下:
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
我们先来了解下HTTP响应的消息,其实我们可以使用Telnet命令来查看,下面我给出点HTTP响应内容:
HTTP/1.1 200 OK
Server:Microsoft-IIS/6.0
Date: Thu, 31 Oct 2008 11:20:53 GMT
Content-Type: text/html
Set-Cookie: name=value; path=/
Cache-control: private
<html>
下面我们来详细的介绍一下,代码如下:
<?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");
?>
只要把上面代码放到你的php页面的最开始处就好了,要不header函数可能会出错,所以必须放在文档最开始处.
大型站长资讯类网站! https://www.0411zz.com