0
形成這個問題(ETag vs Header Expires)我明白我需要兩個Expire頭和eTag頭,因爲他們有兩個不同的目的。由於我正在研究一個Wordpress插件,我不知道服務器將如何配置,所以我想知道如何檢查eTags是否開啓。 我可以做如何知道eTags是否在PHP中的服務器上打開或關閉?
header('Content-Type: text/css');
// Aggressive caching to save future requests from the same client.
$etag = '"' . md5(__FILE__ . $_GET['my-css-var']) . '"';
header('ETag: ' . $etag);
header('Expires: ' . gmdate('D, d M Y H:i:s', time() + 31536000) . ' GMT');
header('Cache-Control: public, max-age=31536000');
if (empty($_SERVER['HTTP_IF_NONE_MATCH']) || $etag != stripslashes($_SERVER['HTTP_IF_NONE_MATCH'])) {
// return the CSS
} else {
// Not modified!
status_header(304);
}
這將與Etag的上工作都關閉和ETag或者ETag的是關閉會導致一些錯誤?
我認爲最好的選擇是發送'ETag'頭,即使服務器不支持它們。它不會失敗。 – Florent 2012-07-20 16:25:10