PHP中的脚本缓存无法按预期工作

时间:2010-11-29 18:26:31

标签: php javascript caching header http-headers

我在PHP文件中有我的javascript,文件顶部有以下代码。我的想法是让浏览器缓存javascript并对其进行gzip,以便它不会被下载到一个非常页面的视图,但是当检查Web Inspector时,它返回200而不是304并且似乎重新下载文件每个页面视图。

<?php
@ob_start ("ob_gzhandler");
header("Last-Modified: Mon, 05 Nov 2010 01:00:00 GMT");
header("Expires: ".gmdate("D, d M Y H:i:s", time()+2592000)." GMT");
header("Cache-Control: max-age=2592000");
header("ETag: \"9097158e797a93a8e213c6c5c72a2a7c\"");
header("Content-type: application/x-javascript; charset=utf-8;");
?>

1 个答案:

答案 0 :(得分:1)

您的网络服务器很可能会根据其配置重写标头。 php文件通常都是danymic而且不应该被缓存。 dunno如果你使用mod_headers,mod_expires或其他什么,但最干净的想法可能不是在你的脚本中打印任何标题,而是通过你在文件夹中为静态文件定义的webserver配置来处理缓存标题。 maby by htaccess或者什么。