1

我有一个问题,我似乎无法找到明确的答案,我希望有人能为我解决这个问题。

使用 Rails 3.2 资产管道,并通过设置config.action_controller.asset_host为启用域分片, "http://foo%d.example.com"Rails 将始终为 HTML 文件中包含的每个资产使用相同的主机,还是只是选择一个随机的主机?

我在这里担心的是,如果资产主机是随机选择的,如果用户之前从不同的资产主机下载了资产,他们将不得不重新下载他们可能已经在浏览器缓存中拥有的资产。

任何人都可以对此有所了解吗?或者至少澄清我对这个主题可能有的任何困惑。谢谢!

4

1 回答 1

2

关键线

(host =~ /%d/) ? host % (Zlib.crc32(source) % 4) : host

其中 source 是资产的完整路径(例如“/assets/application-123456789012345678.css”)

因此,任何单个文件都将始终路由到同一主机,因为该数字基于路径的校验和。

于 2012-09-13T09:24:42.837 回答