先準備好
- AWS 帳戶
- 自己的網域 (如何從 Google Domains 購買網域)
- 靜態網站 (本文使用 hugo 製作靜態網站)
如果是使用 hugo 來製作靜態網站,要修改 config.toml
的 baseURL
改成自己的網址,例如:https://blog.jihongo.com
最後在終端機輸入 hugo
會將網站編譯輸出到 public
資料夾
裡面的檔案就是整個網站的內容
S3
首先,點選 S3

點選建立儲存貯體

輸入儲存貯體名稱,可以選擇東京或新加坡,公開存取

點選名稱進入

切換到屬性分頁並選擇靜態網站託管

索引文件輸入 index.html
,錯誤文件輸入 404.html
另外複製終端節點的網址,晚點會用到

切換頁面至概觀,上傳靜態網站的檔案
(不要直接上傳 public
資料夾,是上傳 public
裡面的檔案)


選擇公開

標準儲存類別

上傳

等待上傳完成
CloudFront
從服務點選 CloudFront

點選建立分佈

選擇 Web

跳轉頁面後,滑到中間先建立憑證

輸入 *.YOUR_DOMAIN_NAME

選擇電子郵件驗證或 DNS 驗證
這邊使用電子郵件驗證

不新增標籤,跳過

確認網域名稱與驗證方法

可以查看它會寄給哪些信箱,自己要確保收的到信
其中一個收件者是 admin@YOUR_DOMAIN_NAME

我是 Google Domains 購買的網域
至少新增一個 admin@YOUR_DOMAIN_NAME
轉寄到自己的信箱

信箱收到信

跳轉網頁,按下 I Approve

沒問題就會成功

刷新 AWS Certificate Manager 頁面,就可以看到狀態變成已發行

重新回到建立分佈頁面
源網域名稱選擇 Amazon S3 儲存貯體
檢視器通訊協定政策選擇重新導向 HTTP 到 HTTPS

啟用自動壓縮物件

價格分級我選擇有亞洲的
使用網域名稱自行輸入
SSL 憑證選擇剛剛建立好的那個

其它使用預設值

建立完成後,點選 ID 進入設定
狀態欄位會處理一段時間,最後會變成已部署
另外複製自己的網域名稱 YOURS.cloudfront.net
,晚點會用到

進入後選擇源和源群組頁面,打勾後點編輯

貼上先前複製的終端節點網址

如果已上傳靜態網站,設定都沒問題的話
瀏覽器輸入終端節點網址就可以看到自己的靜態網站 (HTTP)
瀏覽器輸入 YOURS.cloudfront.net
也可以看到自己的靜態網站 (HTTPS)
最後到自己的 DNS 供應商增加一個 CNAME
指向剛剛複製的 YOURS.cloudfront.net
以 Google Domains 為例,CNAME
是 blog

等待生效需要一段時間
生效後,前往自訂網域

Done