14

我正在尝试通过指定资源的过期时间来修改我的 .htaccess 文件。它适用于图像,但不适用于 javascript 文件。运行 GTMetrix 时,它仍然建议 javascript 文件需要过期。我试过“application/javascript”和“application/x-javascript”但无济于事。

不知道我做错了什么。

这是我的代码:

     ## EXPIRES CACHING ##
    <IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType image/jpg "access 1 year"
    ExpiresByType image/jpeg "access 1 year"
    ExpiresByType image/gif "access 1 year"
    ExpiresByType image/png "access 1 year"
    ExpiresByType text/css "access 1 month"
    ExpiresByType application/pdf "access 1 month"
    ExpiresByType application/javascript "access 1 week"
    ExpiresByType application/x-shockwave-flash "access 1 month"
    ExpiresByType image/x-icon "access 1 year"
    ExpiresDefault "access 2 days"

    </IfModule>
    ## EXPIRES CACHING ##
4

2 回答 2

23

添加这将使其工作。

ExpiresByType text/x-javascript "access plus 1 month"  
ExpiresByType application/javascript "access plus 1 month"  
ExpiresByType application/x-javascript "access plus 1 month"
于 2013-06-23T18:35:53.820 回答
15

使用浏览器检查器 Chrome/FireFox/Opera 中的网络选项卡,您可以检查资产并查看正在提供哪种“内容类型”。

就我而言,它是 Content-Type:"text/javascript"

所以我在我的 .htaccess 文件中添加了 4 个 ExpiresByType 排列

ExpiresByType text/javascript "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"  
ExpiresByType application/x-javascript "access plus 1 month"

这解决了我的问题,我希望它会帮助其他人。

于 2014-10-24T14:02:37.607 回答