I recently subscribed to Nicholas Zakas’s excellent http://www.nczonline.net newsletter and came across a shocking realization about Amazon’s S3 service: all S3 bucket names are universal. Let me explain what this means.
It all started with wanting a static image server for my blog
A few weeks ago I wanted to host all images for this site on images.eli4d.com. Why? Well I wanted to be able to easily move my blog without worrying about static assets. I also wanted to explore an AWS service such as S3.
I finally got it to work after beating my head against some security policy issues (this had more to do with me than Amazon but this is for another post). One of the key points that I learned when doing this is that the simplest approach to create an S3 based static site requires naming the S3 bucket with the name of the domain.
But then I read the following from Nicolas Zakas’s newsletter
OMG – what?
image attribution: https://flic.kr/p/8Y1Mp9
So what does this mean?
It means that if you have any intention of ever having a static S3 based website, then you should create the S3 buckets with the various permutation of your domain’s names before someone else does (so domain.com, www.domain.com, blog.domain.com, etc…). This is worth doing even if you don’t use those S3 buckets.
Keep in mind that you’re not locked out of using any other S3 buckets for your domains. But you have to deal with some unnecessary hoops.
Many thanks to Nicolas Zakas for documenting his experience with S3.