建立原始請求原則 - Amazon CloudFront

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

建立原始請求原則

您可以使用原始要求原則來控制 CloudFront 傳送至原始伺服器的要求中包含的值 (URL 查詢字串、HTTP 標頭和 Cookie)。您可以使用 AWS Command Line Interface (AWS CLI) 或使用 CloudFront API 在 CloudFront 控制台中創建源請求策略。

建立原始要求原則之後,您可以將它附加至 CloudFront 散發中的一或多個快取行為。

不需要原始伺服器請求政策。當快取行為未附加原始伺服器請求政策時,原始伺服器請求會包含快取政策中指定的所有值,但僅此而已。

注意

若要使用原始伺服器請求政策,快取行為也必須使用快取政策。在沒有快取政策的情況下,您無法在快取行為中使用原始伺服器請求政策。

Console
建立原始伺服器請求政策 (主控台)
  1. 登入 AWS Management Console 並開啟 CloudFront 主控台中的 [原則] 頁面,位於https://console.aws.amazon.com/cloudfront/v4/home?#/policies

  2. 選擇 Origin request (原始伺服器請求),然後選擇 Create origin request policy (建立原始伺服器請求政策)。

  3. 選擇此原始伺服器請求政策所需的設定。如需詳細資訊,請參閱 瞭解原始請求政策

  4. 完成時,請選擇 Create (建立)。

建立原始伺服器請求政策後,您可以將其附加至快取行為。

將原始伺服器請求政策附加到現有分佈 (主控台)
  1. 在主控台中開啟 [發行版] 頁 CloudFront 面,位於https://console.aws.amazon.com/cloudfront/v4/home#/distributions

  2. 選擇要更新的分佈,然後選擇行為索引標籤。

  3. 選擇要更新的快取行為,然後選擇編輯

    或者,若要建立新的快取行為,請選擇 Create behavior (建立行為)。

  4. Cache key and origin requests (快取金鑰和原始伺服器請求) 一節中,請確定已選擇 Cache policy and origin request policy (快取政策和原始伺服器請求政策)。

  5. 針對 Origin request policy (原始伺服器請求政策),請選擇要連接至此快取行為的原始伺服器請求政策。

  6. 請在頁面底部選擇 Save changes (儲存變更)。

將原始伺服器請求政策附加到新分佈 (主控台)
  1. 在開啟 CloudFront 主控台https://console.aws.amazon.com/cloudfront/v4/home

  2. 選擇 Create Distribution (建立分佈)。

  3. Cache key and origin requests (快取金鑰和原始伺服器請求) 一節中,請確定已選擇 Cache policy and origin request policy (快取政策和原始伺服器請求政策)。

  4. 對於 Origin request policy (原始伺服器請求政策),請選擇要連接至此分佈預設快取行為的原始伺服器請求政策。

  5. 為原始伺服器、預設快取行為和其他分佈設定選擇所需的設定。如需詳細資訊,請參閱 發佈設定參考

  6. 完成後,請選擇 Create distribution (建立分佈)。

CLI

若要使用 AWS Command Line Interface (AWS CLI) 建立原始要求原則,請使用aws cloudfront create-origin-request-policy指令。您可以使用輸入檔案來提供命令的輸入參數,而不是將每個個別參數指定為命令列輸入。

建立原始伺服器請求政策 (包含輸入檔案的 CLI)
  1. 使用下列命令建立一個名為 origin-request-policy.yaml 的檔案,其中包含 create-origin-request-policy 命令的所有輸入參數。

    aws cloudfront create-origin-request-policy --generate-cli-skeleton yaml-input > origin-request-policy.yaml
  2. 開啟您剛才建立且命名為 origin-request-policy.yaml 的檔案。編輯檔案以指定您想要的原始伺服器請求政策設定,然後儲存檔案。您可以從檔案中移除選用欄位,但不要移除必要欄位。

    如需有關原始伺服器請求原則設定的詳細資訊,請參閱 瞭解原始請求政策

  3. 使用下列命令,使用 origin-request-policy.yaml 檔案中的輸入參數建立原始伺服器請求政策。

    aws cloudfront create-origin-request-policy --cli-input-yaml file://origin-request-policy.yaml

    記下命令輸出中的 Id 值。這是原始要求原則識別碼,您需要它將原始要求原則附加至 CloudFront 散發的快取行為。

若要將原始伺服器請求政策附加至現有分佈 (包含輸入檔案的 CLI)
  1. 使用下列命令來儲存您要更新之 CloudFront 發行版的發佈組態。將 distribution_ID 取代為分佈的 ID。

    aws cloudfront get-distribution-config --id distribution_ID --output yaml > dist-config.yaml
  2. 開啟您剛才建立且命名為 dist-config.yaml 的檔案。編輯檔案,對您要更新的每個快取行為進行下列變更,以使用原始伺服器請求政策。

    • 在快取行為中,新增名為 OriginRequestPolicyId 的欄位。對於欄位值,請使用您在建立政策後記下的原始伺服器請求政策 ID。

    • ETag 欄位重新命名為 IfMatch,但不要變更欄位的值。

    完成後儲存檔案。

  3. 使用下列命令來更新分佈,以使用原始伺服器請求政策。將 distribution_ID 取代為分佈的 ID。

    aws cloudfront update-distribution --id distribution_ID --cli-input-yaml file://dist-config.yaml
若要將原始伺服器請求政策連接至新分佈 (包含輸入檔案的 CLI)
  1. 使用下列命令建立一個命名為 distribution.yaml 的檔案,其中包含 create-distribution 命令的所有輸入參數。

    aws cloudfront create-distribution --generate-cli-skeleton yaml-input > distribution.yaml
  2. 開啟您剛才建立且命名為 distribution.yaml 的檔案。在預設快取行為的 OriginRequestPolicyId 欄位中,輸入您在建立政策後記下的原始伺服器請求政策 ID。繼續編輯檔案以指定所需的分佈設定,然後在完成後儲存檔案。

    如需有關分佈設定的詳細資訊,請參閱 發佈設定參考

  3. 使用下列命令,使用 distribution.yaml 檔案中的輸入參數建立分佈。

    aws cloudfront create-distribution --cli-input-yaml file://distribution.yaml
API

若要使用 CloudFront API 建立原始要求政策,請使用 CreateOriginRequestPolicy. 有關您在此 API 調用中指定的字段的詳細信息,請參閱瞭解原始請求政策和 AWS SDK 或其他 API 客戶端的 API 參考文檔。

建立原始伺服器請求政策後,您可以使用下列其中一個 API 呼叫,將其附加至快取行為:

對於這兩個 API 呼叫,請在快取行為中的 OriginRequestPolicyId 欄位中提供原始伺服器請求政策的 ID。有關您在這些 API 調用中指定的其他字段的詳細信息,請參閱發佈設定參考和 AWS SDK 或其他 API 客戶端的 API 參考文檔。