我已经设置了所有图像和css / js文件的浏览器缓存。尽管如此,当我在网络面板下查看浏览器的Web开发人员工具时,似乎仍然从服务器检索每个缓存文件。
这就是我在.htaccess中所拥有的:
<ifModule mod_headers.c>
<ifModule mod_expires.c>
# images for 1 hour
<filesMatch "\.(jpeg|jpg|png|gif|flv|pdf|swf)$">
ExpiresActive On
ExpiresDefault "access plus 1 hours"
Header set Cache-Control "public, max-age=3600, must-revalidate"
</filesMatch>
# CSS and js for longer
<filesMatch "\.(ico|css|js|eot|ttf|ttc|otf|woff)$">
ExpiresActive On
ExpiresDefault "access plus 7 days"
Header set Cache-Control "public, max-age=604800, must-revalidate"
</filesMatch>
</ifModule>
</ifModule>
# do not use ETag
FileETag None
对于像https://www.fiveroasters.de/wp-includes/css/dashicons.min.css?ver=3.9.2这样的CSS文件,会产生以下标题:
Accept-Ranges bytes, bytes
Age 0
Cache-Control public, max-age=604800, must-revalidate
Connection keep-alive
Content-Encoding gzip
Content-Length 24803
Content-Type text/css
Date Fri, 26 Sep 2014 21:26:10 GMT
Expires Fri, 03 Oct 2014 21:26:10 GMT
Last-Modified Tue, 27 May 2014 09:24:09 GMT
Server Apache/2.4.10
Vary Accept-Encoding
Via 1.1 varnish
这看起来对我来说,浏览器仍然没有缓存它,但每个请求仍然导致完全下载(http代码200)。对于JS,图像等也是如此?为什么?您可以自己查看https://www.fiveroasters.de
(我在webtools设置下启用了缓存设置。)