【发布时间】:2014-12-04 00:29:50
【问题描述】:
我认为 HTTP 的 ETag 正是使过时缓存内容失效的机制。并且为了同样的原因使用摘要。为什么它们更好,为什么 etags 还不够?
【问题讨论】:
标签: ruby-on-rails http asset-pipeline etag
我认为 HTTP 的 ETag 正是使过时缓存内容失效的机制。并且为了同样的原因使用摘要。为什么它们更好,为什么 etags 还不够?
【问题讨论】:
标签: ruby-on-rails http asset-pipeline etag
因为 ETags 仍然需要客户端访问服务器以查看客户端的缓存副本是否仍然新鲜。 Rails 在资产上放置了一个远期过期标头,这意味着客户端永远不会再次访问服务器以获取资产,它已经缓存了。然后摘要成为服务器使客户端获得资产的新版本的手段。我认为 Rails 过去使用时间戳而不是摘要,但摘要还有一个额外的小好处,即如果您将资产恢复到以前的状态,它的摘要将是相同的,并且客户端可能仍会将其缓存。
【讨论】: