Skip to main content

Command Palette

Search for a command to run...

Simple Static Website Hosting Using AWS

Published
2 min read
Simple Static Website Hosting Using AWS

A month ago, I wanted to host a simple HTML page on AWS. I had a small set of requirements;

  1. It should be accessible through a custom domain

  2. The page to be password-protected

  3. I wanted a simple way to replace the HTML files, preferably using a GUI

A very popular way to host a static website on AWS is to use S3. I could create a CloudFront distribution, use an S3 bucket as the backend, and configure a custom domain with AWS Route 53. This satisfies requirements 1 and 3. I couldn’t find a simple way to achieve the second requirement without implementing authentication myself, and I didn’t want to go down that path. This was a simple internal dashboard generated with Claude, and I didn’t want to spend time on infrastructure configuration, auto-deployment from GitHub, or any DevOps-related work. Also, this approach requires switching between 3 separate AWS services. While I enjoy tinkering with AWS, I wanted something simpler and faster to set up.

After some research, I found AWS Amplify. It’s a managed service that greatly simplifies deploying frontend applications and can host static websites. It supports custom domains, password-protected pages, and I can update the HTML files by just uploading a zip file. It took me less than 5 minutes to get the internal dashboard up and running. Amplify also has great pricing, and since it’s a serverless service, you don’t need to worry about resource management.