Technically what is the difference between s3n, s3a and s3?

The letter change on the URI scheme makes a big difference because it causes different software to be used to interface to S3. Somewhat like the difference between http and https – it’s only a one-letter change, but it triggers a big difference in behavior. The difference between s3 and s3n/s3a is that s3 is … Read more

Amazon AWS Route 53 Hosted Zone does not work

You have successfully transfered the domain to Gandi, but your domain is still configured with GD nameservers. Check this: Log in to your AWS web console Select Route53 service Select Hosted Zones in the left pane Select verticeinteractive.co.uk (but do not click on the domain name, just select the radio button) Notice the 4 name … Read more

CloudFront + S3 Website: “The specified key does not exist” when an implicit index document should be displayed

I’ll go out on a limb and say that the specified key doesn’t technically exist, so the error message is technically accurate but doesn’t tell the whole story. This should be an easy fix. S3 buckets have two¹ endpoints, “REST” and “website.” They have two different feature sets. The web site endpoint provides magical resolution … Read more

Amazon S3 CORS (Cross-Origin Resource Sharing) and Firefox cross-domain font loading

Update September 10, 2014: You shouldn’t need to do any of the query string hacks below anymore since Cloudfront properly supports CORS now. See http://aws.amazon.com/blogs/aws/enhanced-cloudfront-customization/ and this answer for more info: https://stackoverflow.com/a/25305915/308315 OK, I finally got the fonts working using the config below with a little tweak from examples in the documentation. My fonts are … Read more

What is the algorithm to compute the Amazon-S3 Etag for a file larger than 5GB?

Say you uploaded a 14MB file to a bucket without server-side encryption, and your part size is 5MB. Calculate 3 MD5 checksums corresponding to each part, i.e. the checksum of the first 5MB, the second 5MB, and the last 4MB. Then take the checksum of their concatenation. MD5 checksums are often printed as hex representations … Read more

S3 – Access-Control-Allow-Origin Header

Usually, all you need to do is to “Add CORS Configuration” in your bucket properties. The <CORSConfiguration> comes with some default values. That’s all I needed to solve your problem. Just click “Save” and try again to see if it worked. If it doesn’t, you could also try the code below (from alxrb answer) which … Read more

The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256

AWS4-HMAC-SHA256, also known as Signature Version 4, (“V4”) is one of two authentication schemes supported by S3. All regions support V4, but US-Standard¹, and many — but not all — other regions, also support the other, older scheme, Signature Version 2 (“V2”). According to http://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html … new S3 regions deployed after January, 2014 will only … Read more

S3 Static Website Hosting Route All Paths to Index.html

It’s very easy to solve it without url hacks, with CloudFront help. Create S3 bucket, for example: react Create CloudFront distributions with these settings: Default Root Object: index.html Origin Domain Name: S3 bucket domain, for example: react.s3.amazonaws.com Go to Error Pages tab, click on Create Custom Error Response: HTTP Error Code: 403: Forbidden (404: Not … Read more

Amazon CloudFront Latency

CloudFront attempts to fetch uncached content from the origin server in real time. There is no “replication delay” or similar issue because CloudFront is a pull-through CDN. Each CloudFront edge location knows only about your site’s existence and configuration; it doesn’t know about your content until it receives requests for it. When that happens, the … Read more