關於CloudFront的使用 小結

1. 這篇文章主要是記錄如何配置CloudFront將S3的靜態和動態 Web 內容(如 .html、.css、.js 和圖像文件)緩存到Edge Locations。詳細的CloudFront介紹可以參考官方文檔

2. 假設我們有一個名爲“bastriver”的bucket,testCloudFront下有兩張圖片,如圖:

3. 首先是進入AWS Console CloudFront的界面,如圖:

1) 在CloudFront創建Distribution的界面設置Origin Domain Name時,能夠直接選擇S3的bucket,如圖:

2) Origin Path指的是我們需要發佈哪些路徑下的文件,如圖:

3) Restrict Bucket Access指的是如果我們需要限制/testCloudFront路徑下的資源只能通過CloudFront生成的URL訪問而不是用S3 Object的URL,選擇Yes,如圖:

4) 上一步的Restrict Bucket Access如果選擇Yes,那麼接下來需要配置的Origin Access Identity就是爲你的Origin分配一個特殊的CloudFront用戶,如圖:

 而Grant Read Permissions on Bucket將會幫你更新bucket的policy,如圖:

 5) 下面的Default Cache Behavior Settings這裏就不需要配置了,都可以使用默認值,配置介紹可以參考這裏

6) 創建後等幾分鐘就可以用了,如圖:

 4. 嘗試直接通過上面的Domain Name訪問資源。

1) d27k880sp.cloudfront.net/img1.jpg

2) 接下來需要修改bucket的配置,如圖:

3) 如果還是不能訪問,修改Object的Permissions,如圖:

5.  通過以上步驟就能夠訪問到資源了。

注: 因爲CloudFront將資源緩存到了Edge Location,所以當你現在又把bucket的policy改回來,還是能繼續訪問資源。

6. CloudFront緩存默認是一天,如圖:

進入Edit界面: 

7. 如果需要flush資源,可以手動Invalidate這些資源 ,如圖:

 

附:

1. CloudFront signed url和S3 pre-signed url的區別。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章