计算机科学中只有两件难事:缓存失效和命名。
——菲尔·卡尔顿
Gulp 有一个插件gulp-rev用于将文件内容的哈希附加到其名称的末尾,因此例如script.js会变成类似script-134cfcc203.js.
该rev-manifest.json是映射存储原始名称和每个文件的当前名称。
这样做是为了缓存失效。这是它的完成方式:
您在服务器(nginx、apache 或其他)上将资源(样式、脚本等)的 TTL(生存时间)设置为无限,这意味着您告诉客户的浏览器他们应该缓存资源永远。
然后,当您更改文件的内容(例如script.js)时,因为您将其散列附加到其名称后,名称就会更改。然后,当用户的浏览器请求您的页面时,他们将其视为一个全新的文件,因此他们被迫重新下载它。但是除非您不更改文件的内容,否则他们永远不会重新下载它,因此您的页面加载速度会加快。
尽管请注意,您还需要另一个插件gulp-rev-rewrite来搜索您的 html 文件并自动将script.js其替换为新名称,而该插件使用该rev-manifest.json文件来执行此操作。
希望它足够清楚。或者如果不是,请随时提问,我会编辑和澄清更多
| 归档时间: |
|
| 查看次数: |
1898 次 |
| 最近记录: |