Set a default cache control and expires for entire S3 bucket/CloudFront

I have an amazon S3 bucket with approximately 300K items in it that are used by a large website. I would like to set the expiration of all the objects that are served out of CloudFront from the S3 bucket so that they can be cached in the browser by the user's machine. Is there an easy way to set the cache control on all the s3 objects currently in the bucket AND most importantly set a default for the bucket so that any new items added also gain the expires and cache-control headers OR can this be done using CloudFront?

So far i have read a number of AWS documents but have found nothing:

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

  • Steps for adding cache control for existing objects in your bucket

  • git clone https://github.com/s3tools/s3cmd
  • Run s3cmd --configure (You will be asked for the two keys - copy and paste them from your confirmation email or from your Amazon account page. Be careful when copying them! They are case sensitive and must be entered accurately or you'll keep getting errors about invalid signatures or similar. Remember to add s3:ListAllMyBuckets permissions to the keys or you will get an AccessDenied error while testing access.)
  • ./s3cmd --recursive modify --add-header="Cache-Control:public ,max-age= 31536000" s3://your_bucket_name/
  • For CloudFront you can specify Minimum TTL, Maximum TTL, and Default TTL for a cache behavior.they are basically the time for which an object can be cached on CloudFront and has nothing to do with adding an expiry header for the object ie it doesn't mody any header

    So now if you haven't added any header, then cloudfront will caches it for DEFAULT TTL. FOR MORE INFO READFOLLOWING TABLE http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html#ExpirationDownloadDist

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

    上一篇: 从AWS流式传输视频

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