我正在为特定的静态资源使用具有固定缓存时间(例如1天)的CloudFront。同时,我希望浏览器仅将其缓存一小时,这就是为什么响应是:
cache-control: private; max-age=3600
但是,CloudFront始终添加响应头:
age: 35
哪个是已缓存在代理(在本例中为CloudFront)上的秒数。
读取https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching确实很有意义,并且没有提到age
标头。可能的是该标头具有值24678秒,并且该资源将被视为已过期。
我只想确认age
标头对本地浏览器缓存没有影响。我说得对吗?
不幸的是,经过几个小时的测试和实验,似乎无法实现我想要的目标-在CloudFront中长时间(例如1天)缓存资源,但是将其在浏览器中缓存30分钟。] >
age
标头会影响HTTP资源的到期。
例如如果您有cache-control: private; max-age=3600
,并且尝试使用age: 4000
从CloudFront中获取资源,则浏览器认为该资源已过期,下次必须再次重新下载。