<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/hosting-a-static-website-using-amazon-s3-3na337wdi" -->

---
title: Hosting a Static Website Using Amazon S3 | daily.dev
description: A beginner-friendly walkthrough for hosting a static website using Amazon S3. Covers creating HTML files, uploading them to an S3 bucket, enabling static...
canonical: https://daily.dev/posts/hosting-a-static-website-using-amazon-s3-3na337wdi
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Hosting a Static Website Using Amazon S3 | daily.dev
og:description: A beginner-friendly walkthrough for hosting a static website using Amazon S3. Covers creating HTML files, uploading them to an S3 bucket, enabling static...
og:url: https://daily.dev/posts/hosting-a-static-website-using-amazon-s3-3na337wdi
og:image: https://api.daily.dev/og/posts/3Na337WdI.png
og:image:alt: Hosting a Static Website Using Amazon S3
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Hosting a Static Website Using Amazon S3

**[Medium](https://daily.dev/sources/medium_js)** · 5 min read · 0 upvotes · 0 comments

## Summary

A beginner-friendly walkthrough for hosting a static website using Amazon S3. Covers creating HTML files, uploading them to an S3 bucket, enabling static website hosting, configuring public access by disabling the public access block, and adding a bucket policy that grants read-only access to all internet users. Ends with retrieving the bucket website endpoint URL to view the live site.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://medium.com/@mutcherlajayani/hosting-a-static-website-using-amazon-s3-5952c3f14be1>

## Questions this post answers

### How do I make my Amazon S3 bucket publicly readable for a static website?

Disable the 'Block all public access' setting in the bucket's Permissions tab, then add a bucket policy granting the s3:GetObject action to all principals for the bucket's objects, using a policy with Effect Allow, Principal *, and Resource arn:aws:s3:::your-bucket-name/*. This grants read-only access; it does not allow uploads, modifications, or deletions.

_Developers setting up S3 static hosting can find similar configuration walkthroughs on daily.dev._

### Why do I get an Access Denied error when opening my S3 static website?

Access Denied typically occurs because S3 buckets are private by default, even after uploading files and enabling static website hosting. Visitors cannot read the files until you disable block public access and attach a bucket policy allowing public s3:GetObject access; without that policy, the files remain inaccessible to browsers.

_Anyone debugging S3 hosting permission errors can track similar troubleshooting steps on daily.dev._

## Similar posts on daily.dev

- [What is AWS S3 and How I Used It — A Beginner’s Guide](https://daily.dev/posts/what-is-aws-s3-and-how-i-used-it-a-beginner-s-guide-xi5dsabct) · Faun · 2 upvotes · 0 comments
- [How to Host a Static Site on AWS for the Price of a Domain](https://daily.dev/posts/how-to-host-a-static-site-on-aws-for-the-price-of-a-domain-ntpwo7tdy) · Atomic Spin · 0 upvotes · 0 comments
- [GitHub for Beginners: Getting started with GitHub Pages](https://daily.dev/posts/github-for-beginners-getting-started-with-github-pages-jmwkcmpj0) · GitHub Blog · 0 upvotes · 0 comments

---

Tags: [#aws](https://daily.dev/tags/aws), [#aws-s3](https://daily.dev/tags/aws-s3)

[View this post on daily.dev](https://daily.dev/posts/hosting-a-static-website-using-amazon-s3-3na337wdi)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Hosting a Static Website Using Amazon S3","url":"https://daily.dev/posts/hosting-a-static-website-using-amazon-s3-3na337wdi","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/hosting-a-static-website-using-amazon-s3-3na337wdi"},"datePublished":"2026-07-19T07:30:54.342Z","dateModified":"2026-09-14T06:00:16.066Z","description":"A beginner-friendly walkthrough for hosting a static website using Amazon S3. Covers creating HTML files, uploading them to an S3 bucket, enabling static...","image":"https://media.daily.dev/image/upload/s--1KxV4ohY--/f_auto/v1722860400/public/Placeholder%2007","thumbnailUrl":"https://media.daily.dev/image/upload/s--1KxV4ohY--/f_auto/v1722860400/public/Placeholder%2007","isAccessibleForFree":true,"articleSection":"Medium","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Medium","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/medium","url":"https://daily.dev/sources/medium_js"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/hosting-a-static-website-using-amazon-s3-3na337wdi","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"aws,aws-s3","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Medium","item":"https://daily.dev/sources/medium_js"},{"@type":"ListItem","position":3,"name":"Hosting a Static Website Using Amazon S3"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/hosting-a-static-website-using-amazon-s3-3na337wdi#faq","mainEntity":[{"@type":"Question","name":"How do I make my Amazon S3 bucket publicly readable for a static website?","acceptedAnswer":{"@type":"Answer","text":"Disable the 'Block all public access' setting in the bucket's Permissions tab, then add a bucket policy granting the s3:GetObject action to all principals for the bucket's objects, using a policy with Effect Allow, Principal *, and Resource arn:aws:s3:::your-bucket-name/*. This grants read-only access; it does not allow uploads, modifications, or deletions. Developers setting up S3 static hosting can find similar configuration walkthroughs on daily.dev."}},{"@type":"Question","name":"Why do I get an Access Denied error when opening my S3 static website?","acceptedAnswer":{"@type":"Answer","text":"Access Denied typically occurs because S3 buckets are private by default, even after uploading files and enabling static website hosting. Visitors cannot read the files until you disable block public access and attach a bucket policy allowing public s3:GetObject access; without that policy, the files remain inaccessible to browsers. Anyone debugging S3 hosting permission errors can track similar troubleshooting steps on daily.dev."}}]}
```

