範例 index.html:
<!DOCTYPE html>
<html lang="zh-TW">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>我的第一個 S3 網站</title>
</head>
<body>
<h1>歡迎來到我的 S3 網站!</h1>
<p>這是使用 AWS S3 架設的靜態網站</p>
</body>
</html>
3. 點擊「編輯」
4. 設定靜態網站託管:
- 靜態網站託管:選擇「啟用」
- 託管類型:選擇「託管靜態網站」
- 索引文件:輸入 index.html
基本設定已經完成,但此時若點擊儲存貯體網站端點,會無法連線並顯示「403 Forbidden」錯誤。這是因為 AWS S3 預設會封鎖所有公開存取,我們還需要透過「儲存貯體政策」來調整權限,允許訪客讀取網站內容。
點擊「許可」標籤
捲動到「儲存貯體政策」區塊
點擊「編輯」
貼上以下政策(記得替換 your-bucket-name
為您的儲存貯體名稱):
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicReadGetObject",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::your-bucket-name/*"
}
]
}
點擊「儲存變更」
因為 S3 網站預設只提供 HTTP 連線,沒有 SSL/TLS 憑證,因此無法使用安全的 HTTPS 協定。
為了讓網站顯示為「安全」並使用 HTTPS,您需要透過 AWS CloudFront 來為網站加上 SSL 憑證。
注意!!!這裡一定要貼s3屬性給你的url不能用選的,因為預設會是s3 api endpoint,需要修改成 website endpoint
身為小資族這裡就選擇不開啟WAF(因為太貴XD),主要功用為可以設定policy阻擋IP或是限定字等做為相對應的response!
下一步的話就直接省略直接建立等待3~5分鐘就建立完成
測試一下~ 我的網站就這樣做好啦!!
✅ 優點:
⚠️ 注意事項:
以一個小型網站為例(每月 10GB 儲存、10,000 次請求):
現在您已經成功在 AWS S3 上架設了第一個靜態網站!🎉