iT邦幫忙

2023 iThome 鐵人賽

DAY 16
0

今天要來介紹 S3 另一個很泛用的功能

就是使用 S3 架設靜態網站

S3 不支援 PHP、Java、.Net 這類動態網站架設

不過如果是 HTML + JavaScript + CSS 的靜態網站架設

完全是綽綽有餘

今天介紹的使用方式只能算是可行

不是 AWS 推薦最佳實踐的方式

因此有考慮使用 S3 做靜態網站託管的

需要參考明天的文章較適合

S3 ACL 設定

在一開始建立 Bucket 時

取消勾選 封鎖所有公開存取權

並啟用 ACL 控制

以便 Bucket 的物件是可以被公開存取、公開瀏覽的

https://ithelp.ithome.com.tw/upload/images/20231001/20141518g0pH5DcR6K.png

如果是舊有 Bucket 要調整

則點擊 Bucket 進到頁面中

許可 的分類中

封鎖公有存取權 按下編輯

並取消勾選 封鎖所有公開存取權

一樣可以達到相同設定

不需要將 Bucket 砍掉重建

啟用靜態網站託管

點擊 Bucket 進到頁面中

屬性 的分類中捲軸捲到最下面

靜態網站託管 按下編輯

https://ithelp.ithome.com.tw/upload/images/20231001/20141518qzjvNLfYTg.png

選擇啟用後會多出很多選項

索引文件就輸入 index.html 即可

https://ithelp.ithome.com.tw/upload/images/20231001/20141518eJIQ6qovuT.png

將檔案設為公有

上傳檔案 index.html

並將檔案設為公有

https://ithelp.ithome.com.tw/upload/images/20231001/20141518CSG50u1P4t.png

設為公有後再去檢查 index.html存取控制清單 (ACL)

會發現其中一項被更改為公開讀取

https://ithelp.ithome.com.tw/upload/images/20231001/20141518RQP54t0jre.png

打開網站確認

進到 屬性 頁面中

捲軸拉到最底可以看到 S3 託管的網站位址

點擊後就會導向網站頁面

JavaScript Content-Type 錯誤
如果透過前一篇設定 IAM User
使用 WinSCP 上傳到 S3
會遇到 JavaScript 型態錯誤的問題
需要手動修正 Content-Type
這也是 WinSCP 官方論壇有在討論的問題
有遇到這問題的朋友記得手動修改 JavaScript 的 Content-Type
或是參考 winscp mime 相關設定做修改
https://winscp.net/forum/viewtopic.php?t=30191

參考資料:

  1. 使用 Amazon S3 託管靜態網站
  2. Upload js files to S3 with wrong content-type

上一篇
Day 15 使用 IAM User 上傳 S3
下一篇
Day 17 S3 架站 + Cloudfront + Certificate Manager
系列文
上完 AWS 線上課程就打算應徵相關工作是否搞錯甚麼30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言