跳至内容

如何使用 S3 和 Route 53 将顶点域重定向到其子域或任何其他域?

1 分钟阅读
0

我想使用 Amazon Simple Storage Service (Amazon S3) 和 Amazon Route 53 将流量从我的顶点域重定向到其子域名或其他域。

解决方法

先决条件:

  • 确认您的顶点域在 Route 53 中有一个托管区。
  • 确认您拥有在顶点域托管区中创建记录的权限,以及创建 Amazon S3 存储桶的权限。
  • 确保不存在与顶点域同名的 Amazon S3 存储桶。

创建 S3 存储桶以重定向您的域

**注意:**Amazon S3 网站端点不支持 HTTPS。要重定向 HTTP 和 HTTPS 请求,请使用其他方法,例如应用程序负载均衡器或配置了边缘函数的 Amazon CloudFront。有关详细信息,请参阅如何在 CloudFront 中重定向域?以及如何使用应用程序负载均衡器将一个域重定向到另一个域?

完成以下步骤:

  1. Amazon S3 控制台中,使用您的顶点域的确切名称创建一个 Amazon S3 存储桶。
  2. 选择您创建的存储桶,然后选择 Properties(属性)。
  3. 静态网站托管下,选择编辑
  4. 选择重定向对某个对象的请求
  5. 对于 Host name(主机名),输入要重定向到的网站。
  6. 对于 Protocol(协议),为重定向的请求选择 HTTPHTTPS
    注意:如果您未指定协议,则默认选项为
  7. 选择 Save changes(保存更改)。

创建别名记录,使其指向 S3 存储桶

完成以下步骤:

  1. Route 53 控制台中,为您的顶点域选择托管区。
  2. 使用以下值为所选托管区中的顶点域创建 A-Alias 记录:
    对于 Record name(记录名称),将此字段留空。
    对于 Record Type(记录类型),选择 A – IPv4 address(A – IPv4 地址)。
    对于 Route traffic to(将流量路由到),选择 Alias to Amazon S3 website endpoint(指向 Amazon S3 网站端点的别名)。
    对于 Region(区域),选择您的 Amazon S3 存储桶所在的 AWS 区域。
    对于 Enter Amazon S3 Endpoint(输入 Amazon S3 端点),从下拉列表中选择您创建的 Amazon S3 存储桶。确保 Amazon S3 存储桶名称与您的顶点域的托管区名称完全匹配。
    对于 Routing policy(路由策略),选择 Simple(简单)。
    对于 Evaluate Health Target(评估运行状况目标),选择 No(否)。
  3. 选择 Create Records(创建记录)。

确认重定向

要确认重定向,请在浏览器中打开您的顶点域。或者,运行以下 curl 命令来检查响应标头:

curl -i -s example.com | grep -E "HTTP|Location"
Location: http://www.example.com/

输出示例:

curl -i -s example.com | grep -E "HTTP|Location"      HTTP/1.1 301 Moved Permanently
Location: http://www.example.com/

**注意:**成功的重定向将返回 HTTP 301 状态代码。

相关信息

将对存储桶网站端点的请求重定向到另一个存储桶或域