有多个子域引用同一个 S3 存储桶而没有 HTTP 重定向

nxm*_*mad 2 dns cross-domain amazon-web-services

我有一个称为subdomain.domain.com托管代码的存储桶,每当用户访问各种子域时都应该使用它。

例如去: - a.domain.com - b.domain.com -c.domain.com

应该去同一个桶。

我已将所有子域 URL 的 CNAME 设置为转到subdomain.domain.com存储桶的 URL 。问题是,AWS 尝试查找存储桶a.domain.com' instead of just going tosubdomain.domain.com 的存储桶

我读过一些建议,说我可以创建一个类似的存储桶a.domain.com并将其重定向回,subdomain.domain.com但我不想更改 URL,我希望能够仅上传到一个存储桶,并且所有子域都将更新。

Mic*_*bot 7

S3 中一些看似“缺失”的功能实际上是设计在 CloudFront 中的,它是对 S3 的补充。将多个域名指向单个存储桶是这些功能之一。仅使用 S3 无法做到这一点,因为正如您所注意到的,S3 将主机名与存储桶名称相匹配。

创建 CloudFront 分配,将每个所需的域名定义为备用域名。

对于源服务器,键入在 S3 控制台中找到的存储桶的网站端点主机名。(不要从下拉列表中选择存储桶)。

将各种主机名指向 DNS 中的 CloudFront。

CloudFront 将转换传入的主机名,以便 S3 为单个存储桶中的所有域提供服务,该存储桶是您指定为源服务器的存储桶。


请注意,此配置还允许您有选择地将 SSL 与您的 Web 托管存储桶一起使用,这是 S3 依赖 CloudFront 实现的另一项功能。