Skip to main content

Cheaply host static site on S3

Ever wanted to have your own website, but didn't want to fork over $10/mo for hosting? This is the guide for you!

This site is set up in the same way.

What is a static website?

A static website is a website that doesn't require a database or dynamic content.

In addition to this guide, you may want to checkout Amazon's guide too.

Requirements

  • GitHub repo with static site.
  • Registered Domain ( I use namecheap.com )
  • Amazon account

Point Domain to AWS Route 53 DNS

In Route 53

Create a hosted zone for your domain. e.g. example.com

Find the AWS nameservers in your zone file, under the NS record.

They should look something like ns-123.awsdns-42.net

Copy these servers into your registar's website for your domain, the place where you registered your domains.

Get SSL Certificate

In my guide I want to use SSL, you may not want to.

SSL Pros

  • Speed with HTTP2
  • Security

SSL Cons

  • currently not possible to 301 redirect to the correct domain within Cloudfront. However, this should not be a SEO issue if we set canonical URL in the webpage.
  • harder to setup

For this step, you need to be sure that you have access to the email in the contact information that you registered your domain with.

Using Amazon's Certificate Manager

Request a SSL Certificate.

For domain name add your domain name and wildcard subdomain.

You will need to verify this with the email in the contact info for the domain you registered.