我们在 S3 上有大量的照片。我们每天都会添加和删除这些照片,但目前有数百万张照片,如果可能的话,我们不想重写或更新它们。
我们没有在这些现有照片上设置任何过期标头。
我刚刚旋转了云端并将其指向我们的存储桶。
我现在有两个目标:
- 使用版本控制让旧照片从 Cloudfront 中过期。
- 在某处(S3,CloudFront)设置远期到期标头,以通知浏览器它们应该永久保留这些文件。
这引发了一些问题。我可以通过一个设置实现上述两个目标吗?
我可以在存储桶级别、单张照片级别或云端级别进行此设置吗?
最好能够在云端或 S3 存储桶级别进行任何缓存和未来过期标头设置,而不必担心单个照片级别的这些设置,尤其是考虑到我们在 s3 中已经有数百万张没有这些设置的照片。
谢谢您的帮助,非常感谢!
答案1
不幸的是,您在 S3 中的单个项目级别添加了缓存控制。我不知道您是否可以在存储桶级别执行此操作。
不过,您可以使用第三方工具同时对多个项目执行此操作,例如CloudBerry 探索器
我已经对一些项目完成了此操作,以下是来自 AWS Web 控制台的屏幕截图:
该值的单位是秒。
S3 也支持版本控制,但我个人尚未使用过。
就 Cloudfront 而言,你只需要摆弄它就可以使无效文档的旧版本。例如,您更改了 index.html 文件,并且需要 Cloudfront 立即删除其(现在)过期的副本。使文件无效,浏览网站的用户将从 S3 获取更新的副本。