Expires / Cache-Control标头的问题

时间:2010-11-29 10:59:16

标签: performance apache caching

我正在使用Apache 2.2.16。

我的htdocs文件夹中有以下HTML文件:

<html>
 <link media="screen" type="text/css" href="/css/test.css" rel="stylesheet" />
 <body>XXXX</body>
</html>

我正在尝试在我的浏览器中创建CSS文件缓存,这样除了首次加载页面之外,它不会再发出请求。

但是,每次按下刷新时,我都会看到CSS文件再次从服务器加载。我在服务器日志中看到了200个响应代码。

我的httpd.conf文件中有以下内容:

<LocationMatch "\.(css)$">
 Header set Cache-Control "max-age=2592000"
 Header set Expires "Thu, 15 Apr 2020 20:00:00 GMT"
 Header unset Last-Modified
 Header set Content-Type text/css
 Header unset ETag
</LocationMatch>

以下是我的回复标题,如Firebug报道的那样:

Date    Mon, 29 Nov 2010 10:48:49 GMT
Server  Apache/2.2.16 (Win32)
Accept-Ranges   bytes
Content-Length  18107
Cache-Control   max-age=2592000
Expires Thu, 15 Apr 2020 20:00:00 GMT
Content-Type    text/css
Keep-Alive  timeout=5, max=97
Connection  Keep-Alive

我已经阅读了一些关于设置缓存标头的文章,但我看不到它是否正常工作。

任何建议都非常感谢。

1 个答案:

答案 0 :(得分:0)

我看到手动设置过期和配置的配置存在类似问题。缓存控制。只是让mod_expires做那个“繁重的” 可能 已经解决了这些问题?