>  기사  >  php教程  >  php header缓存的示例

php header缓存的示例

WBOY
WBOY원래의
2016-06-06 19:38:241297검색

每5秒更新.. Adminers ?php$interval=5;session_cache_limiter('private_no_expire'); //在session之后处理缓存, 需要加上这个.session_start();if ($_SERVER['HTTP_IF_MODIFIED_SINCE']){ // HTTP_IF_MODIFIED_SINCE即下面的: Last-Modified,文档缓存时间. /

每5秒更新.. Adminers
<?php
$interval=5;
session_cache_limiter('private_no_expire'); //在session之后处理缓存, 需要加上这个.
session_start();

if ($_SERVER['HTTP_IF_MODIFIED_SINCE']){
    // HTTP_IF_MODIFIED_SINCE即下面的: Last-Modified,文档缓存时间.
    // 缓存时间+时长. 
    $ctime = strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE'])+$interval;
         
    // 当大于当前时间时, 表示还在缓存中... 释放304
    if($ctime > time()){
       header('HTTP/1.1 304 Not Modified');
       exit();
    }
}

// 上面这段代码未使用任何其它库, 所以可以放在首行.
 
header("Pragma: private");
header("Cache-Control:max-age=$interval, pre-check=$interval"); 
header("Expires: " . gmdate("D, d M Y H:i:s",time()+$interval)." GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
 
 
echo date('Y-m-d H:i:s'); // 注意看是不是差5秒刷新一次.
echo ' - <a href="?a=">Link</a><br />';
var_dump($_SERVER['HTTP_IF_MODIFIED_SINCE']);

// IE11 ff38 chrome测试通过.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.