【问题标题】:Azure CDN - Enabling HTTP 304 Caching with ETag - Hosted Web RoleAzure CDN - 使用 ETag 启用 HTTP 304 缓存 - 托管 Web 角色
【发布时间】:2012-05-18 08:37:29
【问题描述】:

我们正在尝试通过 Azure CDN 上的 ETag 启用 HTTP 压缩 (gzip) 和 HTTP 304 缓存。我们已经发现了enabling Azure CDN Compression 的一个问题,但现在我们无法同时进行压缩和 ETag 缓存 (304s)。这个问题已经posted to Azure forums here

Here is an example of the compressed,但不是 HTTP 可缓存 (304) 链接:

https://xxxx.vo.msecnd.net/resourceManager.axd?token=HL80vX5hf3lIAAA&group=core.js

Here is an example of the cacheable (304),但不可压缩(gzip)链接:

https://xxxx.vo.msecnd.net/resourceManager.axd?token=HL80vX5hf3lIAAA&group=core.png

有谁知道如何让 HTTP 缓存 (304s)HTTP 压缩 在 Azure CDN 上协同工作?

【问题讨论】:

  • 我正在努力从 Windows Azure CDN 团队获得一些牵引力。我会在获得更多信息后立即提供答案。同时,您能否举例说明“通过 Etags 进行 HTTP 304 缓存”是什么意思?
  • 我想我们知道发生了什么,但是我需要更多信息来调查我们这边。请您发送您的 Azure CDN 端点 (az######.vo.msecnd.net) 详细信息吗?
  • @Avkash - 请参阅上面的链接(例如,这里是...的示例)。我们当前的端点是 az194054.vo.msecnd.net
  • 还有一个问题:您是指定 If-None-Match 还是 If-Match?根据我的经验,大多数用户依赖于修改日期和 GET If-Modified-Since。
  • @Avkash - 您刚刚找到了我们的解决方法!您应该将此作为解决方案发布。 This SO postETag/In-None-MatchLast Modified/If-Modified-Since 进行了很好的比较。如果您需要为具有多种编码等的给定实体缓存标志,则 ETag 似乎更强大。出于我们的目的, Last Modified/If-Modified-Since 工作得很好,我们不需要基于编码的变量缓存。你摇滚 - 请将此添加为答案。我们已根据需要使用 HTTP Header Last Modified 304 进行了验证。

标签: azure azure-web-roles http-compression http-caching azure-cdn


【解决方案1】:

了解您指定的是 If-None-Match 还是 If-Match 很重要?根据我的经验,大多数用户依赖修改日期和 GET If-Modified-Since

如果您需要为具有多种编码等的给定实体缓存标志,

ETag 会更强大。

根据您的要求,请使用 Modified/If-Modified-Since,您不需要基于编码的变量缓存,这应该可以。

更多信息在这里:HttpWebResponse LastModified

【讨论】:

  • 感谢您的帮助 - 这对我们来说会是一个阻碍!
猜你喜欢
  • 2012-05-12
  • 2015-01-27
  • 1970-01-01
  • 1970-01-01
  • 2012-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多