【发布时间】:2016-03-11 12:53:06
【问题描述】:
好的,所以当我运行 Google Page Tools 时,我注意到我的 Cloudfront 没有缓存,它告诉我我的图像没有设置过期时间。我通过 Cloudfront 使用 Amazon S3。 S3 上没有设置标题,因为我有数百个文件夹和数千个图像文件,每小时都会上传新文件。
我去了我的 Cloudfront 控制台,进入行为,编辑那里唯一的一个并设置:
Minimum TTL: 86400
Maximum TTL: 31536000
Default TTL: 86400
我检查了“对象缓存”的“自定义”选项。然后我去使我的所有对象无效并无效(*)。我一直等到它完成,但请求文件时我的标题仍然显示:
Age:8
Connection:keep-alive
Date:Mon, 07 Dec 2015 00:44:39 GMT
ETag:"429d87a5fd35288d207635d2a853fa0b"
Server:AmazonS3
Via:1.1 (my-ID-here).cloudfront.net (CloudFront)
X-Amz-Cf-Id:RxHlfhhnrSk9YwIqpFySnPVrscndnknZ9RKlIryXCLwh4RCK9vK6Vw==
X-Cache:Hit from cloudfront
我做错了什么?
【问题讨论】:
-
响应标头
X-Cache: Hit from cloudfront和Age: 8表明 CloudFront 正在为您缓存内容。是什么让你认为不是?当您将对象上传到 S3 时,您应该在对象上设置Cache-Control:标头,但这是次要问题。
标签: caching amazon-s3 amazon-cloudfront