我的自定义源返回的响应可能因请求的协议而异。该网站需要一些可通过 http 访问的 url,因此我不能仅在 Cloudfront 中禁用 http。
但是,Cloudfront 正在缓存 http 响应并为通过 https 发出的请求提供服务。
我对这种行为感到困惑,因为 http://example.com 是与 https://example.com 不同的资源 - 因此不应为它们提供相同的缓存响应。然而,Cloudfront 似乎就是这么做的。
有没有办法指示 Cloudfront 在其缓存键中使用请求协议?
通过将
X-Forwarded-Proto
标头添加到缓存键,这可以(或成为?)成为可能。这是 CloudFront 根据所使用的入站协议(HTTP 或 HTTPS)注入到请求中的标头