# 建立 S3 導向 CloudFront ###### tags: `AWS 功能` ## S3 設定 1. 建立儲存桶 2. 設定儲存桶名稱、區域 ![](https://i.imgur.com/tYMvJV1.png) **<font color="#880000">啟用 ACL 設定</font>** ![](https://i.imgur.com/0U5Ijt5.png) 3. 在封鎖儲存桶的公開存取設定(Block Public Access settings for bucket)區段中,清除封鎖所有公開存取(Block all public access)的選取。 **<font color="#880000">選取核取方塊,表示我確認目前的設定可能會導致此儲存桶及其中的物件變為公開</font>** ![](https://i.imgur.com/KNVsJad.png) ::: danger 注意 : 必須允許對儲存桶及檔案的公有讀取存取,S3才可以向 CloudFront 提供儲存桶的內容。 ::: 4. 所有其他設定保留為預設值,然後選擇建立儲存桶 5. 在儲存桶的物件中上傳測試檔案 (EX. index.jpg) 6. 編輯儲存貯體政策 (限制權限僅供讀取) ``` { "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::walle-cloudfront", "arn:aws:s3:::walle-cloudfront/*" ] } ] } ``` ## CloudFront 設定 1. 選擇建立分佈 2. 在原始伺服器下,對於原始伺服器網域選擇先前建立的 Amazon S3 儲存桶,原始伺服器下的其他設定使用預設值 ![](https://i.imgur.com/YkzzKNU.png) 3. 預設快取行為下方的設定使用預設值 4. 原始設定下的設定內容使用預設值 5. 選擇建立分佈 (通常這需要幾分鐘的時間等待部屬完成) 6. 點選連結加上文件位置即可 ![](https://i.imgur.com/ojlSypY.png) 7. 完成結果 ![](https://i.imgur.com/F7IqNi7.jpg)