设置一个默认的缓存控制,并为整个S3存储桶/ CloudFront过期

我有一个大型网站使用的大约300K项目的亚马逊S3存储桶。 我想设置从S3存储桶中提供的所有CloudFront对象的到期日期,以便它们可以由用户的计算机缓存在浏览器中。 是否有一种简单的方法来设置当前存储桶中所有s3对象的缓存控制, 并且最重要的是为该存储桶设置默认值,以便添加的任何新项目都获得过期和缓存控制标头, 或者可以使用CloudFront完成?

到目前为止,我已经阅读了许多AWS文档,但没有发现任何内容:

  • http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html
  • http://docs.aws.amazon.com/cli/latest/reference/s3/index.html

  • 为存储桶中的现有对象添加缓存控制的步骤

  • git clone https://github.com/s3tools/s3cmd
  • 运行s3cmd --configure(您将被要求提供两个密钥 - 从您的确认电子邮件或亚马逊帐户页面复制并粘贴它们。复制它们时要小心!它们区分大小写,必须准确输入,否则您将保留获取有关无效签名或类似错误的信息,请记住将s3:ListAllMyBuckets权限添加到密钥中,否则在测试访问时将会出现AccessDenied错误。)
  • ./s3cmd --recursive modify --add-header =“Cache-Control:public,max-age = 31536000”s3:// your_bucket_name /
  • 对于CloudFront,您可以为缓存行为指定最小TTL,最大TTL和默认TTL。它们基本上是可以在CloudFront上缓存对象的时间,并且与为对象添加到期标头无关,也就是说, t可以是任何头文件

    所以现在如果你还没有添加任何头文件,那么cloudfront会将其缓存为DEFAULT TTL。 更多信息READFOLLOWING TABLE http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html#ExpirationDownloadDist

    链接地址: http://www.djcxy.com/p/68471.html

    上一篇: Set a default cache control and expires for entire S3 bucket/CloudFront

    下一篇: Amazon Kinesis dynamically stream resize