利用浏览器缓存 |修改 .htaccess 文件 |- 不适用于JavaScript文件

Leverage browser caching | modifying .htaccess file | - not working for javascript files

本文关键字:文件 适用于 JavaScript 不适用 修改 浏览器 缓存 htaccess      更新时间:2023-09-26

我正在尝试通过指定资源的过期时间来修改我的 .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 ##

添加它将使其工作。

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

使用浏览器检查器 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"

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