Adi*_*Adi 4 .htaccess caching last-modified
我试图在我的 htaccess 文件中设置一些缓存控制选项。
目前它看起来像这样:
<FilesMatch "\.(flv|gif|jpg|jpeg|png|ico|swf|css|js|html|pdf)$">
Header set Cache-Control "max-age=2592000, public, must-revalidate"
Header unset ETag
FileETag None
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)
但是我读到(并想添加)标题未设置上次修改时间,所以它会是这样的:
<FilesMatch "\.(flv|gif|jpg|jpeg|png|ico|swf|css|js|html|pdf)$">
Header set Cache-Control "max-age=2592000, public, must-revalidate"
Header unset Last-Modified
Header unset ETag
FileETag None
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)
然而,使用这个(根据 Firebug)根本不会从缓存中加载任何内容(而第一种技术会加载所有内容)
难道我做错了什么?语法似乎是正确的。
A。
语法是正确的,但用法不正确。根据此处找到的“速度提示:删除最后修改的标头”: http: //www.askapache.com/htaccess/apache-speed-last-modified.html
如果删除 Last-Modified 和 ETag 标头,您将完全消除 If-Modified-Since 和 If-None-Match 请求及其 304 Not Modified 响应,因此文件将保持缓存状态而不检查更新,直到 Expires 标头指示新的内容可用!
还:
通过从静态文件(图像、javascript、css)中删除 ETag 标头和 Last-Modified 标头,浏览器和缓存将无法验证文件的缓存版本与真实版本。通过还包含 Cache-Control 标头和 Expires 标头,您可以指定将某些文件缓存一段时间,并且您可以神奇地(我保证这是一个非常独特的技巧)消除任何验证请求!
请参阅原始链接了解更多详细信息。
| 归档时间: |
|
| 查看次数: |
13428 次 |
| 最近记录: |