Caching 为整个S3 bucket/CloudFront设置默认缓存控制并过期
我有一个AmazonS3存储桶,里面有大约30万个项目,供一个大型网站使用。我想设置从S3 bucket提供的CloudFront之外的所有对象的过期时间,以便用户的机器可以将它们缓存在浏览器中。是否有一种简单的方法可以在当前存储桶中的所有s3对象上设置缓存控制和最重要的是为存储桶设置默认值,以便添加的任何新项目也可以获得expires和缓存控制头或这可以使用CloudFront完成吗 到目前为止,我已经阅读了许多AWS文件,但没有发现任何内容:Caching 为整个S3 bucket/CloudFront设置默认缓存控制并过期,caching,amazon-web-services,amazon-s3,amazon-cloudfront,Caching,Amazon Web Services,Amazon S3,Amazon Cloudfront,我有一个AmazonS3存储桶,里面有大约30万个项目,供一个大型网站使用。我想设置从S3 bucket提供的CloudFront之外的所有对象的过期时间,以便用户的机器可以将它们缓存在浏览器中。是否有一种简单的方法可以在当前存储桶中的所有s3对象上设置缓存控制和最重要的是为存储桶设置默认值,以便添加的任何新项目也可以获得expires和缓存控制头或这可以使用CloudFront完成吗 到目前为止,我已经阅读了许多AWS文件,但没有发现任何内容: 为bucket中的现有对象添加缓存控制的步
CloudFront设置“最小TTL”、“最大TTL”和“默认TTL”指定CloudFront缓存的行为,而不是HTTP响应中设置的标题,对吗?这似乎没有解决问题的最后一部分。如何设置bucket,以便在该文件夹中添加的新内容,甚至整个bucket都能将该标记添加到CloudFront TTL中。TTL表示,对象应该在边缘节点缓存中保留多长时间,而不使用客户端缓存。我很高兴找到了该工具。使用AWS CLI时,命令如下所示:
AWS s3 cp s3://YOUR_BUCKET/s3://YOUR_BUCKET/--metadata directive REPLACE--recursive--cache control max age=31536000