我使用的是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我读过一些关于设置缓存头的文章,但我就是不明白如何让它工作。
任何建议都非常感谢。
发布于 2010-11-29 19:50:07
我在手动设置expire和cache-control的配置中也看到过类似的问题。只是让mod_expires来做“繁重的工作”可能已经解决了这些问题?
https://stackoverflow.com/questions/4303077
复制相似问题