I threw out the S3 bucket and changed it with Netlify, and the experience is just awesome!
An S3 bucket is a very useful building block, and I believe Amazon Web Services has the right building blocks for a very complex IT system. However, an S3 bucket is not a recommend method of hosting a website. You need additional tools such as Amazon CloudFront, AWS Certificate Manager, Amazon Route 53, ... and maybe even Amazon CloudFormation!
How it works
The essentials for creating, updating and publishing a static website can be done from the commandline using the netlify-cli NodeJS Package.
Only a few steps are required:
- You create a website using
- Deploy it using the
- Update the CNAME DNS-record for
wwwto point to
- Optionally but recommended, redirect HTTP requests to the root DNS-record to the
- Optionally but recommended, a free SSL/TLS certificate using Let's Encrypt
I think that Netlify's internal CDN is using a push (upload) method where it populates each POP with each deploy. I like this because it gives very fast feedback if an update succeeded or not!
The Netlify has build a CDN that operates around the globe.
A quick check using CEKDNS:
- Virginia, United States - Amazon
- New York, United States - Amazon
- Toronto, Ontario, Canada, - Digital Ocean
- San Antonio, Texas, United States - Rackspace
- Sao Paulo, Brazil - Amazon
- Frankfurt, Germany - Amazon
- Dublin, Ireland - Amazon
- Mumbai, India - Amazon
- Tokyo, Japan - Amazon
- Singapore - Amazon
- Sydney, Australia - Amazon
Almost every continent pops up in this list, so this ensures low latency from almost every country in the world! It is also worth noting that the architecture looks cloud provider agnostic as their CDN covers Amazon, Digital Ocean and Rackspace. This keeps the option open to switch easily from one to another and if the momentum is big enough even install their own gear!
Edit 2018-01-22: CEKDNS seems to have shut down, removed dead link.