为什么我得到的是 CustomOriginConfig 而不是 S3OriginConfig?
Why am I getting a CustomOriginConfig instead of S3OriginConfig?
在 this article 之后,我正在尝试从多个区域提供我网站的静态内容。
那篇文章中的 lambda 函数试图修改此路径中对象的 属性:
event.Records[0].cf.request.origin.s3
这是在我的 lambda 函数没有收到这样的 属性 的情况下。相反,我得到:
event.Records[0].cf.request.origin.custom
显然,这意味着我收到 CustomOriginConfig
,而文章预期 S3OriginConfig
。我不确定这两个是什么意思,但是 "Edit Origin" 页面文章中描述的 UI 与我的完全不同。
文章显示:
我知道了:
谁能帮我看看为什么我收到的是 CustomOriginConfig
而不是 S3OriginConfig
?
CloudFront 仅在源域名是存储桶的 REST 端点时才将源视为 S3 源——例如${bucketname}.s3.amazonaws.com
。这是支持使用源访问身份在 CloudFront 后端对请求进行身份验证的配置。
如果您使用 S3 的网站托管功能(索引和错误文档,and/or 重定向),那么您可以使用存储桶的网站托管端点,例如${bucketname}.s3-website.${region}.amazonaws.com
。 CloudFront 实际上将此配置视为 Custom Origin,就像您使用任何(非 S3)Web 服务作为源服务器一样。 Origin Access Identity 和 S3 网站端点彼此不兼容。
控制台选项会根据控制台是否看到您正在创建 S3 或自定义源(基于主机名)而变化。
在 this article 之后,我正在尝试从多个区域提供我网站的静态内容。
那篇文章中的 lambda 函数试图修改此路径中对象的 属性:
event.Records[0].cf.request.origin.s3
这是在我的 lambda 函数没有收到这样的 属性 的情况下。相反,我得到:
event.Records[0].cf.request.origin.custom
显然,这意味着我收到 CustomOriginConfig
,而文章预期 S3OriginConfig
。我不确定这两个是什么意思,但是 "Edit Origin" 页面文章中描述的 UI 与我的完全不同。
文章显示:
我知道了:
谁能帮我看看为什么我收到的是 CustomOriginConfig
而不是 S3OriginConfig
?
CloudFront 仅在源域名是存储桶的 REST 端点时才将源视为 S3 源——例如${bucketname}.s3.amazonaws.com
。这是支持使用源访问身份在 CloudFront 后端对请求进行身份验证的配置。
如果您使用 S3 的网站托管功能(索引和错误文档,and/or 重定向),那么您可以使用存储桶的网站托管端点,例如${bucketname}.s3-website.${region}.amazonaws.com
。 CloudFront 实际上将此配置视为 Custom Origin,就像您使用任何(非 S3)Web 服务作为源服务器一样。 Origin Access Identity 和 S3 网站端点彼此不兼容。
控制台选项会根据控制台是否看到您正在创建 S3 或自定义源(基于主机名)而变化。