我在S3前面使用CloudFront来提供图像。 origin(S3)设置以下缓存头:CacheControl: max-age=86400,s-maxage=31536000
。这里的期望是CloudFront会将图像缓存一年,浏览器会将其缓存一天。之后,它应该再次点击CloudFront并获取缓存的图像,并缓存" new"其余时间的项目。
我遇到的问题是来自CloudFront的Date
标头是最初在CDN中缓存的时间。因此,在CDN缓存一天后,浏览器不再缓存图像,并且每次都会访问CloudFront。此时,商品的Age
已超过max-age
值。在CloudFront项无效或过期之前,浏览器永远不会从其缓存中检索该项。
是否可以设置此选项,以便浏览器每隔一天缓存一次,但CloudFront ttl可以设置为长达一年的东西?