创建源请求策略
您可以使用源请求策略控制包含在 CloudFront 发送到源的请求中的值(URL 查询字符串、HTTP 标头和 Cookie)。您可以使用 Amazon Command Line Interface(Amazon CLI)或 CloudFront API 在 CloudFront 控制台中创建源请求策略。
创建源请求策略后,可以将它附加到 CloudFront 分配中的一个或多个缓存行为。
源请求策略不是必需的。如果缓存行为未附加源请求策略,则源请求只会包含缓存策略中指定的所有值。
注意
要使用源请求策略,缓存行为还必须使用缓存策略。如果没有缓存策略,则无法在缓存行为中使用源请求策略。
- Console
-
创建源请求策略(控制台)
-
登录到 Amazon Web Services Management Console 并通过以下网址在 CloudFront 控制台中打开 Policies (策略) 页面:https://console.amazonaws.cn/cloudfront/v4/home?#/policies
。 -
选择 Origin request(源请求),然后选择 Create origin request policy(创建源请求策略)。
-
为此源请求策略选择所需的设置。有关更多信息,请参阅 了解源请求策略。
-
完成后,选择 Create(创建)。
创建源请求策略后,可以将它附加到缓存行为。
将源请求策略附加到现有分配(控制台)
-
在 CloudFront 控制台中打开 Distributions (分配) 页面,网址为 https://console.amazonaws.cn/cloudfront/v4/home#/distributions
。 -
选择要更新的分配,然后选择行为选项卡。
-
选择要更新的缓存行为,然后选择编辑。
或者,要创建新的缓存行为,请选择 Create behavior(创建行为)。
-
在 Cache key and origin requests(缓存键和源请求)区域,请确保选择了 Cache policy and origin request policy(缓存策略和源请求策略)。
-
对于 Origin request policy(源请求策略),选择要附加到此缓存行为的源请求策略。
-
在页面底部,选择 Save changes(保存更改)。
将源请求策略附加到新分配(控制台)
通过 打开 CloudFront 控制台https://console.amazonaws.cn/cloudfront/v4/home
-
选择 Create distribution(创建分配)。
-
在 Cache key and origin requests(缓存键和源请求)区域,请确保选择了 Cache policy and origin request policy(缓存策略和源请求策略)。
-
对于 Origin request policy(源请求策略),选择要附加到此分发的原定设置缓存行为的源请求策略。
-
为源、原定设置缓存行为和其他分配设置选择所需的设置。有关更多信息,请参阅 分配设置参考。
-
完成后,选择 Create distribution(创建分配)。
-
- CLI
-
要使用 Amazon Command Line Interface (Amazon CLI) 创建源请求策略,请使用 aws cloudfront create-origin-request-policy 命令。您可以使用输入文件来提供命令的输入参数,而不是将每个单独的参数指定为命令行输入。
创建源请求策略(带输入文件的 CLI)
-
使用以下命令创建名为
origin-request-policy.yaml
的文件,其中包含 create-origin-request-policy 命令的所有输入参数。aws cloudfront create-origin-request-policy --generate-cli-skeleton yaml-input > origin-request-policy.yaml
-
打开刚创建的名为
origin-request-policy.yaml
的文件。编辑该文件以指定所需的源请求策略设置,然后保存该文件。您可以从该文件中删除可选字段,但不要删除必填字段。有关源请求策略设置的更多信息,请参阅了解源请求策略。
-
使用以下命令通过
origin-request-policy.yaml
文件中的输入参数创建源请求策略。aws cloudfront create-origin-request-policy --cli-input-yaml file://origin-request-policy.yaml
记下命令输出中的
Id
值。这是源请求策略 ID,您需要它才能将源请求策略附加到 CloudFront 分发的缓存行为。
将源请求策略附加到现有分配(带输入文件的 CLI)
-
使用以下命令保存要更新的 CloudFront 分配的分配配置。将
distribution_ID
替换为分配的 ID。aws cloudfront get-distribution-config --id
distribution_ID
--output yaml > dist-config.yaml -
打开刚创建的名为
dist-config.yaml
的文件。编辑该文件,对要更新的每个缓存行为进行以下更改以使用源请求策略。-
在缓存行为中,添加名为
OriginRequestPolicyId
的字段。对于字段的值,请使用创建策略后记下的源请求策略 ID。 -
将
ETag
字段重命名为IfMatch
,但不更改字段的值。
完成后保存该文件。
-
-
使用以下命令更新分配以使用源请求策略。将
distribution_ID
替换为分配的 ID。aws cloudfront update-distribution --id
distribution_ID
--cli-input-yaml file://dist-config.yaml
将源请求策略附加到新分配(带输入文件的 CLI)
-
使用以下命令创建名为
distribution.yaml
的文件,其中包含 create-distribution 命令的所有输入参数。aws cloudfront create-distribution --generate-cli-skeleton yaml-input > distribution.yaml
-
打开刚创建的名为
distribution.yaml
的文件。在默认缓存行为中,在OriginRequestPolicyId
字段中输入创建策略后记下的源请求策略 ID。继续编辑该文件以指定所需的分配设置,然后在完成后保存该文件。有关分配设置的更多信息,请参阅分配设置参考。
-
使用以下命令通过
distribution.yaml
文件中的输入参数创建分配。aws cloudfront create-distribution --cli-input-yaml file://distribution.yaml
-
- API
-
要使用 CloudFront API 创建源请求策略,请使用 CreateOriginRequestPolicy。有关您在此 API 调用中指定的字段的更多信息,请参阅了解源请求策略以及有关 Amazon SDK 或其他 API 客户端的 API 参考文档。
创建源请求策略后,可以使用下列 API 调用之一将该策略附加到缓存行为:
-
要将该配置附加到现有分配中的缓存行为,请使用 UpdateDistribution。
-
要将该配置附加到新分配中的缓存行为,请使用 CreateDistribution。
对于这两个 API 调用,请在缓存行为中的
OriginRequestPolicyId
字段中提供源请求策略的 ID。有关您在这些 API 调用中指定的其他字段的更多信息,请参阅 分配设置参考 以及有关 Amazon SDK 或其他 API 客户端的 API 参考文档。 -