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

1 分钟阅读
0

我想使用 Amazon Simple Storage Service(Amazon S3),将互联网流量从我的根(顶点)域(例如 example.com)重定向到其子域名(例如 www.example.com)。或者,我想使用 Amazon S3,将互联网流量从我的顶点域重定向到另一个域(例如,example.net)。

解决方案

先决条件

  • 在 Amazon Route 53 中,您的顶点域名有一个托管区。
  • 您有权在托管区中为顶点域创建记录。
  • 您有权创建 S3 存储桶。
  • 与您的顶点域名完全相同的 S3 存储桶尚不存在。
    **注意:**Amazon S3 网站端点不支持 HTTPS。因此,重定向仅适用于 HTTP 请求。要重定向 HTTP 和 HTTPS 请求,请使用其他方法,例如使用应用程序负载均衡器使用 Amazon CloudFront 重定向请求。

通过以下步骤,使用 Amazon S3 重定向您的域名。例如,要将对顶点域 example.com 的请求重定向到其子域名 www.example.com,请使用以下步骤:

  1. Amazon S3 控制台中,使用您的顶点域的确切名称创建一个 S3 存储桶。例如,example.com。
    **注意:**S3 存储桶名称在全球范围内是唯一的。如果您需要的存储桶名称已经使用,则无法使用 Amazon S3 进行重定向。在这种情况下,可以考虑其他方法,例如使用应用程序负载均衡器配置重定向使用带边缘功能的 Amazon CloudFront
  2. 选择您创建的存储桶,然后选择属性
  3. 静态网站托管下,选择编辑
  4. 选择重定向对某个对象的请求
  5. 对于主机名,输入要重定向到的网站。例如,www.example.com。
  6. 对于协议,选择被重定向请求的协议(无、HTTP 或 HTTPS)。
    注意:如果您未指定协议,则默认选项为
  7. 选择保存更改
  8. Route 53 控制台中,为您的顶点域选择托管区。例如,example.com。
  9. 使用以下值,为所选托管区域中的顶点域创建 A-Alias 记录:
    记录名称: 将此字段留为空白。
    记录类型: 选择 ** A - IPv4 地址**。
    将流量路由到: 选择 S3 网站端点的别名
    区域: 选择您的 S3 存储桶所在的区域。
    输入 S3 端点: 从下拉列表中,选择您创建的 S3 存储桶。例如,example.com。确保 S3 存储桶名称与您的顶点域的托管区域名称完全匹配。
    路由策略: 选择简单
    评估运行状况目标: 选择,然后选择创建记录

要验证重定向,请在浏览器中打开您的顶点域。或者,使用以下 curl 命令,检查响应的 HTTP 状态码以及响应中 Location 标头的值。成功的重定向会返回 HTTP 301 Moved Permanently 状态代码,并且 Location 标头值包含您重定向到的域名的 URL。

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

相关信息

如何在 Route 53 中将一个域重定向到另一个域?

针对存储桶的网站端点的请求重新导向到另一个存储桶或域

AWS 官方
AWS 官方已更新 1 年前