Pagespeed问题:利用浏览器缓存

时间:2017-03-29 20:46:21

标签: wordpress performance .htaccess caching browser-cache

我的WordPress网站上的Google和GTmetrix速度测试失败了。两者都指定未启用浏览器缓存。

我尝试了一些缓存插件,例如WP Super Cache,但它们没有效果。

我还手动编辑了.htaccess文件,其中包含以下内容:

##### EXPIRE CACHING - LEVERAGE BROWSER CACHING #####
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month 1 days"
ExpiresByType text/html "access plus 1 month 1 days"
ExpiresByType image/gif "access plus 1 month 1 days"
ExpiresByType image/jpeg "access plus 1 month 1 days"
ExpiresByType image/png "access plus 1 month 1 days"
ExpiresByType text/css "access plus 1 month 1 days"
ExpiresByType text/javascript "access plus 1 month 1 week"
ExpiresByType application/x-javascript "access plus 1 month 1 days"
ExpiresByType text/xml "access plus 1 seconds"
</IfModule>
##### END EXPIRE CACHING #####

但是,它再次没有影响。我曾尝试过我的主机提供商BlueHost三次,他们每次给我一个不同的回复,但他们大致相当于&#34;与我们无关。&#34;

有没有人知道我可能做错了什么?

我觉得我正用这个撞在砖墙上撞击我的头!

我很感激你能给我的任何帮助。

2 个答案:

答案 0 :(得分:1)

我遇到了与WP Super Cache相同的问题(这就是我发现这个帖子的方式)。我切换到WP Fastest Cache,它为我解决了它(它在选项中将其作为切换设置) - 我想发布以防你还没有修复它。

答案 1 :(得分:0)

您添加的代码仅在apache模块mod_expires处于活动状态时才有效。

或者,您可以使用以下代码(将其添加到.htaccess)

# 1 YEAR
<FilesMatch "\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$">
Header set Cache-Control "max-age=31536000, public"
</FilesMatch>
# 1 WEEK
<FilesMatch "\.(jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
# 1 WEEK
<FilesMatch "\.(txt|xml|js|css)$">
Header set Cache-Control "max-age=604800"
</FilesMatch>
# NEVER CACHE - notice the extra directives
<FilesMatch "\.(html|htm|php|cgi|pl)$">
Header set Cache-Control "max-age=0, private, no-store, no-cache, must-revalidate"
</FilesMatch>

请注意,这将仅针对内部文件利用浏览器缓存,您无法控制外部文件。