CloudFront 是否在来源的错误响应(例如 503)中使用 Cache-Control headers?

Does CloudFront make use of Cache-Control headers in error responses (e.g. 503) from the origin?

CloudFront 是否在来自源的错误响应(例如 503)中使用 Cache-Control headers(例如 max-age)?还是它的错误响应缓存的长度总是由分配上配置的错误缓存最小 TTL 控制?包含单词 "minimum" 表明当来源提供 Cache-Control max-age 时,错误缓存的行为可能类似于 non-error 缓存的行为,但有关此主题的文档没有似乎明确证实了这个建议。

如果 Web 来源的错误响应大于错误缓存最小 TTL(默认值为五分钟),CloudFront 会尊重 Cache-Control max-age headers。

如果源设置的 max-age 小于错误缓存最小 TTL,CloudFront 缓存错误缓存最小 TTL 的响应,但将源设置的 max-age 传递到客户未被打扰。

同样,如果源将 Cache-Control 设置为 must-revalidate,no-cache,no-store,CloudFront 会缓存错误缓存最小 TTL 的响应,但会传递源设置的 Cache-Control header不受干扰地交给客户。

可以为错误代码自定义错误缓存最小 TTL 400403404405414416500501502503504。不能一次为所有支持的错误代码定制;它必须为每个错误代码单独定制。这是通过创建一个 "Custom Error Response." 来完成的 有点令人困惑的是,这样做不需要您提供自定义错误页面。在创建自定义错误响应时,您可以 select "No" 到 "Customize Error Response" (这听起来像废话,但这是真的)。如果这样做,您只是为您 select.

的 HTTP 错误代码自定义错误缓存最小 TTL