<?php
header("Cache-Control: public");
header("Pragma: cache");
$offset = 30*60*60*24; // cache 1 month
$ExpStr = "Expires: ".gmdate("D, d M Y H:i:s", time() + $offset)." GMT";
header($ExpStr);
echo date("Y-m-d l H:i:s A");
?>
Ich habe einen Cache für einen Monat eingerichtet, aber die Anzeigezeit ist jedes Mal anders, wenn ich ihn aktualisiere. Was stimmt mit dem Code nicht?
页面每次刷新, 你都发送Header, 当然是每次都更新啦.
如果http header上有缓存头的话,
浏览器请求这个页面的时候, 会带上 If-Modified, If-Match, 之类的请求头,
你需要根据这个If头里面的内容来判断, 是发送304 Not Modified 还是发送新的页面.