13

我在文档中找不到这个问题的明确答案。许多参考资料只是说“更改版本会使资产无效”。那么,指纹机制不也是这样做的吗,它根据文件内容和名称生成哈希标签?有谁知道具体是干什么config.assets.version用的?

4

1 回答 1

9

config.assets.version 是用于 MD5 哈希生成的选项字符串。这可以更改为强制重新编译所有文件。*

这在资产内容未更改但您想更改随资产提供的响应标头但这些标头缓存在 CDN 或用户浏览器之类的某个位置时会很有帮助。

更改资产版本将允许您使用新的 md5 哈希重新生成所有资产,从而允许您使用新标头向 CDN 提供相同的资产。

*来自RailsGuides - 配置 Rails 应用程序

注意:截至 2016 年 5 月 20 日,此功能似乎已经被破坏了一段时间https://github.com/rails/sprockets-rails/issues/240。另一种方法是更改​​的值Rails.application.config.assets.prefix

于 2016-05-20T11:28:34.943 回答