如何允许用户将他们自己的域映射到我的 Cloudfront 网站上的子域?

如何允许用户将他们自己的域映射到我的 Cloudfront 网站上的子域?

因此,我运行一项服务,用户可以在其中创建网站并获得自己的子域。因此,如果用户有网站,a-site-name他们的子域将是a-site-name.domain.com。有些用户希望能够拥有自己的域,而不是我域上的子域。我知道我应该能够使用 DNS 中的 CNAME 记录来执行此操作(因此sub.the-users-domain.com解析为a-site-name.domain.com)。但是,当我尝试执行此操作时,我从 Cloudfront 收到 403。

描述一下我的设置:

  • AWS Cloudfront 使用 S3 存储桶作为原点来提供文件。
  • 每个站点a-site-name都存储在同名 S3 存储桶中的文件夹中。
  • 我正在运行 Lambda@Edge 函数,这样每当向 (通配符子域) 发出请求时,a-site-name.domain.com/whatever-resource它实际上都会解析并从中获取数据distribution-id.cloudfront.net/a-site-name/whatever-resource

我猜我收到 403 错误的原因与我的 Cloudfront 部署配置或 Lambda@Edge 函数有关。有人知道如何更改配置以便人们只需使用 CNAME 记录即可使用自己的域吗?说实话,我很困惑。

相关内容