2019年5月24日 星期五

aws s3 + CloudFront備忘

看中文頁面對照AWS官方英文說明剛開始會有些對不上,就寫個備忘文...留存

IAM USER設定:
新增一個使用者,取得程式使用的ID及KEY。

S3設定:

1. 建立S3服務,並設定儲存貯體名稱

2. 於屬性啟用靜態網站託管,取得靜態網站託管的終端節點

3. 設定儲存貯體政策{
    "Version": "YYXX-MM-DD",
    "Statement": [
        {
            "Sid": "PublicReadForGetBucketObjects",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::儲存貯體名稱/*"
        }
    ]
}

CloudFront設定:

源網域名稱:選擇剛建立s3的 靜態網站託管的終端節點源ID : 輸入儲存貯體名稱
可開啟SSL服務與HTTP導向HTTPS

PHP
下載資源
 composer require aws/aws-sdk-php
引用 
require '/path/to/vendor/autoload.php';

補充:
1. 如果要使用自訂的網域名,可透過DNS的CNAME設定來轉,並加入CloudFront的網域清單。
2. 如果持續顯示存取拒絕,可開放S3權限的"everyone"的讀取設定。