本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
需要 HTTPS 才能在 CloudFront 和 Amazon S3 原始伺服器之間進行通訊
當您的原始伺服器是 Amazon S3 bucket 儲存貯體,您能否選擇使用 HTTPS 與 CloudFront 通訊,取決於您使用儲存貯體的方式。如果設定 Amazon S3 儲存貯體為網站端點,則您無法設定 CloudFront 使用 HTTPS 與原始伺服器進行通訊,因為 Amazon S3 在該組態中不支援 HTTPS 連線。
當您的原始伺服器是支援 HTTPS 通訊的 Amazon S3 儲存貯體時,CloudFront 會使用檢視器用來提交請求的通訊協定,將請求轉送至 S3。通訊協定 (僅限自訂原始伺服器) 設定的預設為比對檢視器,而且無法變更。不過,如果您為 Amazon S3 原始伺服器啟用原始存取控制 (OAC),CloudFront 和 Amazon S3 之間使用的通訊取決於您的設定。如需詳細資訊,請參閱建立新的原始存取控制。
如果您要使用 HTTPS 進行 CloudFront 與 Amazon S3 之間的通訊,必須變更 檢視器通訊協定原則的值為重新導向 HTTP 到 HTTPS 或 僅限 HTTP。本節稍後的步驟,說明如何使用 CloudFront 主控台來變更檢視器通訊協定原則。如需使用 CloudFront API 來更新分佈 ViewerProtocolPolicy 元素的詳細資訊,請參閱 Amazon CloudFront API 參考中的 UpdateDistribution。
當您搭配支援 HTTPS 通訊的 Amazon S3 儲存貯體使用 HTTPS 時,Amazon S3 會提供 SSL/TLS 憑證,您則不需要。
Amazon S3 原始伺服器需要 HTTPS
下列程序說明如何設定 CloudFront 要求 HTTPS 到您的 Amazon S3 原始伺服器。
若要將 CloudFront 設定為請求使用 HTTPS 連線到您的 Amazon S3 原始伺服器
登入 AWS 管理主控台 並開啟位於 的 CloudFront 主控台https://console.aws.amazon.com/cloudfront/v4/home
。 -
在 CloudFront 主控台的頂端窗格中,請選擇您要更新的分發 ID。
-
在 Behaviors (行為) 索引標籤中,選擇您要更新的快取行為,然後選擇 Edit (編輯)。
-
請針對 Viewer Protocol Policy (檢視器通訊協定政策) 指定下列其中一個值:
- 重新引導 HTTP 到 HTTPS
-
檢視器可以使用這兩種通訊協定,但會自動重新導向 HTTP 請求到 HTTPS 請求。CloudFront 傳回 HTTP 狀態碼 301 (永久移動) 與新的 HTTPS URL。然後檢視器使用 HTTPS URL 重新將請求提交到 CloudFront。
重要
CloudFront 不會從 HTTP 將
DELETE、OPTIONS、PATCH、POST或PUT請求重新引導到 HTTPS。如果您配置快取行為重新導向至 HTTPS,則 CloudFront 回應該快取行為的 HTTPDELETE、OPTIONS、PATCH、POST或PUT請求,此快取行為具有 HTTP 狀態碼 403 (禁止)。當檢視器執行一個 HTTP 請求供其重新導向到 HTTPS 請求時,CloudFront 會收取這兩個請求的費用。針對 HTTP 請求,只會收取 CloudFront 傳回到檢視器的請求與標頭之費用。針對 HTTPS 請求,會收取該請求與標頭及原始伺服器傳回的物件之費用。
- 僅限 HTTPS
-
檢視器只能在使用 HTTPS 的情況下存取您的內容。如果檢視器傳送 HTTP 請求,而不是 HTTPS 請求,則 CloudFront 傳回 HTTP 狀態碼 403 (禁止),且不會傳回物件。
-
請選擇 Yes, Edit (是,編輯)。
-
為每個額外快取行為,供您要在檢視器與 CloudFront 之間以及 CloudFront 與 S3 之間使用 HTTPS,請重複步驟 3 到 5。
-
您使用生產環境中已更新的組態之前,請先確認以下項目:
-
每個快取行為中的路徑模式僅適用於您想要檢視器使用 HTTPS 的請求。
-
以您想要 CloudFront 評估的順序列出快取行為。如需詳細資訊,請參閱 路徑模式。
-
快取行為會將請求路由到正確的原始伺服器。
-