

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

# 建立原始伺服器請求政策
<a name="origin-request-create-origin-request-policy"></a>

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

建立原始伺服器請求原則後，您可以將其附加到 CloudFront 分發中的一或多個快取行為。

不需要原始伺服器請求政策。當快取行為未附加原始伺服器請求政策時，原始伺服器請求會包含[快取政策](cache-key-understand-cache-policy.md)中指定的所有值，但僅此而已。

**注意**  
若要使用原始伺服器請求政策，快取行為也必須使用[快取政策](controlling-the-cache-key.md)。在沒有快取政策的情況下，您無法在快取行為中使用原始伺服器請求政策。

------
#### [ Console ]

**建立原始伺服器請求政策 (主控台)**

1. 登入 AWS 管理主控台 ，並在位於 的 CloudFront 主控台中開啟**政策**頁面[https://console.aws.amazon.com/cloudfront/v4/home?#/policies](https://console.aws.amazon.com/cloudfront/v4/home?#/policies)。

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

1. 選擇此原始伺服器請求政策所需的設定。如需詳細資訊，請參閱 [了解原始伺服器請求政策](origin-request-understand-origin-request-policy.md)。

1. 完成時，請選擇 **Create** (建立)。

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

**將原始伺服器請求政策附加到現有分佈 (主控台)**

1. 在位於 [https://console.aws.amazon.com/cloudfront/v4/home#/distributions](https://console.aws.amazon.com/cloudfront/v4/home#/distributions) 的 CloudFront 主控台中開啟 **Distributions (分佈)** 頁面。

1. 選擇要更新的分佈，然後選擇**行為**索引標籤。

1. 選擇要更新的快取行為，然後選擇**編輯**。

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

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

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

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

**將原始伺服器請求政策附加到新分佈 (主控台)**

1. 在 [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home) 中開啟 CloudFront 主控台。

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

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

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

1. 為原始伺服器、預設快取行為和其他分佈設定選擇所需的設定。如需詳細資訊，請參閱 [所有分佈設定參考](distribution-web-values-specify.md)。

1. 完成後，請選擇 **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
   ```

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

   如需有關原始伺服器請求原則設定的詳細資訊，請參閱 [了解原始伺服器請求政策](origin-request-understand-origin-request-policy.md)。

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

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

   記下命令輸出中的 `Id` 值。這是原始伺服器請求原則 ID，您需要它將原始伺服器請求原則附加到 CloudFront 分佈的快取行為。

**若要將原始伺服器請求政策附加至現有分佈 (包含輸入檔案的 CLI)**

1. 使用下列命令來儲存您想要更新之 CloudFront 分佈的分佈組態。將 *distribution\$1ID* 取代為分佈的 ID。

   ```
   aws cloudfront get-distribution-config --id distribution_ID --output yaml > dist-config.yaml
   ```

1. 開啟您剛才建立且命名為 `dist-config.yaml` 的檔案。編輯檔案，對您要更新的每個快取行為進行下列變更，以使用原始伺服器請求政策。
   + 在快取行為中，新增名為 `OriginRequestPolicyId` 的欄位。對於欄位值，請使用您在建立政策後記下的原始伺服器請求政策 ID。
   + 將 `ETag` 欄位重新命名為 `IfMatch`，但不要變更欄位的值。

   完成後儲存檔案。

1. 使用下列命令來更新分佈，以使用原始伺服器請求政策。將 *distribution\$1ID* 取代為分佈的 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
   ```

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

   如需有關分佈設定的詳細資訊，請參閱 [所有分佈設定參考](distribution-web-values-specify.md)。

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

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

------
#### [ API ]

若要使用 CloudFront API 建立原始伺服器請求原則，請使用 [CreateOriginRequestPolicy](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateOriginRequestPolicy.html)。如需您在此 API 呼叫中指定欄位的詳細資訊，請參閱 [了解原始伺服器請求政策](origin-request-understand-origin-request-policy.md)和 AWS SDK 或其他 API 用戶端的 API 參考文件。

建立原始伺服器請求政策後，您可以使用下列其中一個 API 呼叫，將其附加至快取行為：
+ 若要將它附加到現有分佈中的快取行為，請使用 [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html)。
+ 若要將它附加到新分佈中的快取行為，請使用 [CreateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html)。

對於這兩個 API 呼叫，請在快取行為中的 `OriginRequestPolicyId` 欄位中提供原始伺服器請求政策的 ID。如需您在這些 API 呼叫中指定之其他欄位的詳細資訊，請參閱 [所有分佈設定參考](distribution-web-values-specify.md)和 AWS SDK 或其他 API 用戶端的 API 參考文件。

------