Connect Custom Domain to AWS S3 Website using Route 53
Published
Short answer. Route 53 replaces the long default S3 website endpoint with your own domain. You create a hosted zone for the domain, point your registrar at its nameservers, and add a record that resolves the domain to the bucket’s website endpoint.
Part 2 of 4 — static hosting on AWS, end to end:
- Host it on S3
- Add your own domain with Route 53 (you are here)
- Automate deploys with GitHub Actions
- Lock it down with CloudFront and a private bucket
Introduction
Hosting your static website on AWS S3 is simple, but by default you get a long AWS URL like:
http://myapp.com.s3-website-us-east-1.amazonaws.com
To make your site look professional, you need a custom domain (like myapp.com).
In this guide, you’ll learn how to:
- Buy/register a domain (Route 53 or third-party like GoDaddy/BigRock)
- Create a hosted zone in Route 53
- Configure S3 for website hosting
- Point your domain to S3 using Route 53 records
By the end, you’ll have your app live on http://myapp.com
Step 1: Buy / Register a Domain
-
You can buy from Route 53 or another registrar like GoDaddy or BigRock.
-
In this example, we’ll use a domain from BigRock:
myapp.com
Step 2: Create a Hosted Zone in Route 53
-
Go to AWS Console → Route 53 → Hosted Zones → Create Hosted Zone.
-
Enter your domain name:
myapp.com -
Choose Public Hosted Zone → Click Create Hosted Zone.
-
Route 53 will give you 4 NS (Name Server) records.
-
Copy these NS records → Go to your domain registrar (BigRock, GoDaddy, etc.) → Update your domain’s Nameserver settings with these 4 values.
Step 3: Configure S3 for Website Hosting
-
Create an S3 bucket with the exact name of your domain:
myapp.com -
(If you want a subdomain, bucket name must be:
www.myapp.com) -
Enable Static Website Hosting in bucket properties.
-
Disable Block All Public Access.
-
Add a read-only bucket policy (same as in previous blog).
-
After saving, you’ll get a website endpoint like:
http://myapp.com.s3-website-us-east-1.amazonaws.com
Step 4: Create a Record in Route 53
- Go to your Hosted Zone in Route 53.
- Click Create Record.
- Name:
myapp.com(orwww.myapp.comfor subdomain). - Record Type: A – Route traffic to IPv4 & AWS resources.
- Alias: Yes.
- Route traffic to: S3 website endpoint.
- Select the correct region.
- Save the record.
Done! Now your domain points to your S3 bucket.
Visiting http://myapp.com will show your hosted website
Conclusion
You’ve successfully connected your custom domain to an AWS S3 hosted site using Route 53.
This setup gives you:
- A professional domain name
- Easy DNS management inside AWS
- A scalable static website hosting solution
Next Steps
Be interview-ready in the era of AI & Cloud — start your DevOps journey today! YouTube won’t get you a job. Real projects + real internship certificate will. AI is reshaping jobs. Don’t watch it happen, be part of it with DevOps & Cloud skills. ₹2000/month today = Dream job tomorrow. Secure your spot now. ⏳ Every month you wait, Cloud + AI jobs are being filled. Don’t miss out! DevOps + AWS + AI = The skillset every recruiter is hunting for in 2025.