【发布时间】:2015-04-13 08:53:53
【问题描述】:
CloudFront 会忽略我的缓存标头,并且必须在一段时间后再次从服务器中提取我的图片。
~$ curl -I http://d2573vy43ojbo7.cloudfront.net/attachments/store/limit/64/3720c5574063aebc90511061b99de858740ad764c6981d2bf30ff121ada0/image.jpg
HTTP/1.1 200 OK
Content-Type: image/jpeg
Content-Length: 1645
Connection: keep-alive
Server: nginx/1.4.1
Date: Thu, 12 Feb 2015 14:37:41 GMT
Status: 200 OK
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers:
Access-Control-Allow-Method:
Cache-Control: public, must-revalidate, max-age=31536000
Expires: Fri, 12 Feb 2016 14:37:41 GMT
Content-Disposition: inline; filename="image.jpg"
Last-Modified: Thu, 12 Feb 2015 14:37:41 GMT
X-Content-Type-Options: nosniff
X-Request-Id: 239b0fda-cae9-452f-9d1b-ccbf035bbf69
X-Runtime: 3.457939
X-Cache: Miss from cloudfront
Via: 1.1 6cde3c778df412041adc7610331b57bc.cloudfront.net (CloudFront)
X-Amz-Cf-Id: yicAkZYc5XpowKRFMOXDKSJKBMWZ4kq2B3vLK8Q-Py124D8lQq_1lg==
我昨天尝试获取相同的文件,然后它是相同的,在我第二次尝试之后,CloudFront 到达并提供了它,但不再是了。我所有的图像都是一样的。它们会被缓存,但会在几个小时后从缓存中删除。
怎么了?我在 CloudFront 上的缓存行为设置设置为默认值,它使用原始缓存标头。
【问题讨论】:
-
您找到解决方案了吗?我一直在挖掘没有任何运气。我得到的结果和你一样。
-
很遗憾没有。我开始通过 Nginx 而不是仅仅使用 CloudFront 来捕获我的资产。