如何检查页面是否使用php缓存

时间:2012-05-03 10:59:49

标签: php http-headers

......以及它是否在30天前缓存,

我正在使用此代码:

 $page=get_headers('http://www.w3schools.com/php/func_date_strtotime.asp');

输出是这样的:

0=>HTTP/1.1 200 OK
     

1 =>连接:关闭

     

2 =>日期:星期四,2012年5月3日10:51:00 GMT

     

3 =>服务器:Microsoft-IIS / 6.0

     

4 => MicrosoftOfficeWebServer:5.0_Pub

     

5 => X-Powered-By:ASP.NET

     

6 => Pragma:no-cache

     

7 =>内容长度:23643

     

8 =>内容类型:text / html

     

9 =>到期:星期四,2012年5月3日10:50:00 GMT

     

10 => Set-Cookie:ASPSESSIONIDSAARQQST = AAMAAHBBBHBELMHDCHNNLMFP;路径= /

     

11 =>缓存控制:无缓存

我读过pragma cache,不一定意味着该页面是不可缓存的。

我想知道两件事: 1)如果页面被缓存 2)如果它是在30天前缓存的。

我可以这样做吗

 $date1=gmdate("D, d M Y H:i:s", strtotime("30 days ago")) . " GMT";
  $date2=$page['Expires'];
  if($date1>$date2)
  {
    echo 'The page was cached for longer than 30 days';
   }

1 个答案:

答案 0 :(得分:1)

由于PHP是服务器端语言,因此无法使用PHP检查浏览器缓存(客户端)。因此,您需要一些客户端脚本,如Javascript,而不是像PHP那样的服务器端编程。