浏览器缓存主要有两类
缓存协商:Last-midified ,Etag
彻底缓存:cache-control,Expires
缓存协商的意思是需要去服务器端询问页面有没有修改过,没有修改过则返回304直接使用缓存内容,否则返回新内容
协商步骤:
服务器发送带Last-midified:GMTtime 头的http response
浏览器下次请求时带上if-modified-since:GMTtime http 请求头
服务端用本地Last-midified时间与if-modified-since比较,计算浏览器数据是否过期并发送响应
last-midified示例:
$modified_time = @$_SERVER['HTTP_IF_MODIFIED_SINCE'];
if( strtotime($modified_time) + 3600>time() ){
header('HTTP/1.1 304');
exit;
}
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
echo time();
?>
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30208512/viewspace-1578291/ ,如需转载,请注明出处,否则将追究法律责任。