为什么我得到的是 CustomOriginConfig 而不是 S3OriginConfig?

Meh*_*ran 0 amazon-web-services amazon-cloudfront

在这篇文章之后,我尝试从多个区域提供我的网站的静态内容。

该文章中的 lambda 函数尝试修改此路径中对象的属性:

event.Records[0].cf.request.origin.s3
Run Code Online (Sandbox Code Playgroud)

这是在我的 lambda 函数没有接收到这样的属性的情况下。相反,我得到:

event.Records[0].cf.request.origin.custom
Run Code Online (Sandbox Code Playgroud)

显然,这意味着我收到了一篇CustomOriginConfig文章,等待S3OriginConfig. 我不确定这两个是什么意思,但文章中描述的“编辑源”页面的 UI 与我的完全不同。

文章显示了这一点:

在此输入图像描述

我有这个:

在此输入图像描述

有人可以帮我找出为什么我收到的是 aCustomOriginConfig而不是 吗S3OriginConfig

Mic*_*bot 5

仅当源域名是存储桶的 REST 端点时,CloudFront 才会将源视为S3 源${bucketname}.s3.amazonaws.com- 例如。此配置支持使用源访问身份在 CloudFront 后端对请求进行身份验证。

如果您使用 S3 的网站托管功能(索引和错误文档和/或重定向),那么您可以使用存储桶的网站托管端点,例如${bucketname}.s3-website.${region}.amazonaws.com。CloudFront 实际上将此配置视为Custom Origin,就像您使用任何(非 S3)Web 服务作为源服务器一样。Origin Access Identity 和 S3 网站端点彼此不兼容。

控制台选项会根据控制台是否发现您正在创建 S3 或自定义源(基于主机名)而变化。

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DownloadDistS3AndCustomOrigins.html