設定備用網域名稱和 HTTPS
若要使用URL 中適用於檔案的備用網域名稱,與在檢視器和 CloudFront 之間使用 HTTPS,請執行適用的程序。
取得 SSL/TLS 憑證
如果您尚未擁有憑證,請取得一個 SSL/TLS 憑證。如需詳細資訊,請參閱適用的文件:
-
若要使用 AWS Certificate Manager (ACM) 提供的憑證,請參閱 AWS Certificate Manager 使用者指南。然後跳至 更新您的 CloudFront 分佈。
注意
我們建議您使用 ACM 在 AWS 受管資源上佈建、管理和部署 SSL/TLS 憑證。您必須在美國東部 (維吉尼亞北部) 區域請求 ACM 憑證。
-
若要從第三方憑證授權單位 (CA) 取得憑證,請參閱憑證授權單位提供的文件。當您有憑證時,請繼續進行下一個程序。
匯入 SSL/TLS 憑證
如果您從第三方 CA 取得憑證,請將憑證匯入到 ACM 或上傳至 IAM 憑證存放區:
- ACM (推薦)
-
ACM 讓您從 ACM 主控台以及透過程式設計方式匯入第三方憑證。如需將憑證匯入 ACM 的詳細資訊,請參閱 AWS Certificate Manager 使用者指南中的將憑證匯入 AWS Certificate Manager。您必須在美國東部 (維吉尼亞北部) 區域匯入憑證。
- IAM 憑證存放區
-
(不推薦) 請使用下列 AWS CLI 命令,將您的第三方憑證上傳至 IAM 憑證存放區。
aws iam upload-server-certificate \ --server-certificate-nameCertificateName\ --certificate-body file://public_key_certificate_file\ --private-key file://privatekey.pem\ --certificate-chain file://certificate_chain_file\ --path /cloudfront/path/注意下列事項:
-
AWS 帳戶 – 您必須使用用來建立 CloudFront 分佈的相同 AWS 帳戶,將憑證上傳至 IAM 憑證存放區。
-
--path 參數 – 當您將憑證上傳到 IAM 時,
--path參數 (憑證路徑) 的值必須以/cloudfront/開頭,例如/cloudfront/production/或/cloudfront/test/。路徑必須以 / 結尾。 -
現有的憑證 – 您必須指定
--server-certificate-name和--path參數的值 (不同於與現有憑證相關聯的值)。 -
使用 CloudFront 主控台 – 您在 AWS CLI 中針對
--server-certificate-name參數指定的值 (例如myServerCertificate),會出現於 CloudFront 主控台的 SSL 憑證清單中。 -
使用 CloudFront API – 請記下 AWS CLI 傳回的英數字元字串,例如
AS1A2M3P4L5E67SIIXR3J。這是您會在IAMCertificateId元素中指定的值。您不需要也由 CLI 傳回的 IAM ARN。
如需 AWS CLI 的詳細資訊,請參閱 AWS Command Line Interface 使用者指南 和 AWS CLI 命令參考。
-
更新您的 CloudFront 分佈
若要更新分佈的設定,請執行以下程序:
設定適用於備用網域名稱的 CloudFront 分佈
登入 AWS 管理主控台 並開啟位於 https://console.aws.amazon.com/cloudfront/v4/home
的 CloudFront 主控台。 -
選擇您希望更新的分佈 ID。
-
在 General (一般) 索引標籤上,選擇 Edit (編輯)。
-
更新下列的值:
- 備用網域名稱 (CNAME)
-
選擇新增項目,以新增適用的備用網域名稱。使用逗號區隔網域名稱,或在新的一行輸入每個網域名稱。
- 自訂 SSL 憑證
-
從下拉式清單中選取憑證。
此處列出高達 100 個憑證。如果您有超過 100 個憑證,而您沒有看到想要新增的憑證,可以在欄位中輸入憑證 ARN 來選取。
如果您將憑證上傳至 IAM 憑證存放區但它沒有被列出,而您無法在欄位中輸入名稱來選取,請檢閱此程序 匯入 SSL/TLS 憑證 以確認您是否正確上傳憑證。
重要
在您把 SSL/TLS 憑證與 CloudFront 分佈相關聯後,請不要從 ACM 或 IAM 憑證存放區刪除憑證,直到您從所有分佈移除憑證且部署所有分佈。
-
選擇儲存變更。
-
將 CloudFront 設定為在檢視器和 CloudFront 之間請求使用 HTTPS:
-
在 Behaviors (行為) 索引標籤中,選擇您想要更新的快取行為,然後選擇 Edit (編輯)。
-
請針對 Viewer Protocol Policy (檢視器通訊協定政策) 指定下列其中一個值:
- 重新引導 HTTP 到 HTTPS
-
檢視器可以使用這兩種通訊協定,但會自動重新引導 HTTP 請求到 HTTPS 請求。CloudFront 會傳回 HTTP 狀態碼
301 (Moved Permanently)以及新的 HTTPS URL。然後檢視器使用 HTTPS URL 重新將請求提交到 CloudFront。重要
CloudFront 不會從 HTTP 將
DELETE、OPTIONS、PATCH、POST或PUT請求重新引導到 HTTPS。如果將快取行為設定為重新引導至 HTTPS,則 CloudFront 會以 HTTP 狀態碼DELETE,來回應此快取行為的 HTTPOPTIONS、PATCH、POST、PUT或403 (Forbidden)請求。當檢視器執行一個 HTTP 請求供其重新引導到 HTTPS 請求時,CloudFront 會收取這兩個請求的費用。針對 HTTP 請求,只會收取 CloudFront 傳回到檢視器的請求與標頭之費用。針對 HTTPS 請求,會收取該請求與標頭及原始伺服器傳回的檔案之費用。
- 僅限 HTTPS
-
檢視器只能在使用 HTTPS 的情況下存取您的內容。如果檢視器傳送 HTTP 請求,而不是 HTTPS 請求,則 CloudFront 會傳回 HTTP 狀態碼
403 (Forbidden),且不會傳回檔案。
-
請選擇 Yes, Edit (是,編輯)。
-
為每個額外快取行為,供您要在檢視器與 CloudFront 之間使用 HTTPS,請重複執行步驟 a 到 c。
-
-
您使用生產環境中已更新的組態之前,請先確認以下項目:
-
每個快取行為中的路徑模式僅適用於您想要檢視器使用 HTTPS 的請求。
-
以您想要 CloudFront 評估的順序列出快取行為。如需詳細資訊,請參閱 路徑模式。
-
快取行為會將請求路由到正確的原始伺服器。
-