CloudFront是否在来自原点的错误响应(例如503)中使用Cache-Control标头?

Mat*_*rne 7 caching amazon-web-services amazon-cloudfront

CloudFront是否在来自原点的错误响应(例如)中使用Cache-Control标题(例如max-age)503?或者,错误响应缓存的长度总是由分布上配置的错误缓存最小TTL控制?包含"最小"一词表示错误缓存的行为可能类似于原始提供的非错误缓存行为Cache-Control max-age,但有关此主题的文档似乎并未明确确认该建议.

Mat*_*rne 5

如果CloudFront的Cache-Control max-age标头大于错误缓存最小TTL(默认值为5分钟),则CloudFront会考虑来自Web来源的错误响应中的标头。

如果来源设置的max-age值小于错误缓存最小TTL,则CloudFront会缓存错误缓存最小TTL的响应,但将max-age来源设置的值原封不动地传递给客户端。

同样,如果原点设置Cache-Controlmust-revalidate,no-cache,no-store,则CloudFront会缓存错误缓存最小TTL的响应,但将Cache-Control原点设置的标头不加扰动地传递给客户端。

误差最小缓存TTL可以定制为错误代码400403404405414416500501502503,和504。无法一次为所有受支持的错误代码自定义它;必须为每个错误代码分别定制。这是通过创建“自定义错误响应”来完成的。有点令人困惑,这样做不需要您提供自定义错误页面。创建“自定义错误响应”时,您可以选择“否”以“自定义错误响应”(听起来像废话,但这是事实)。如果这样做,则仅针对所选的HTTP错误代码自定义错误缓存最小TTL。