如何将流量从非 www 域名重定向到 AWS Route 53 中的 www.example.com
How to redirect traffic from non www domain name to www.example.com in AWS Route 53
我在 AWS Route 53 'www.derbyware.com' 中拥有一个域名,我在“http://node147934-env-7029269.phx.enscaled.us' on Jelastic. now for my users I want them to access the web application using www.derbyware.com not the ugly url 'http://node147934-env-7029269.phx.enscaled.us”有一个 Web 应用程序 运行。我成功地让 www.derbyware.com 作为网络应用程序的域名。现在非 www 'derbyware.com' 不起作用。
您可以测试这些网址。
澄清一下,您的情况似乎是:
- 您在 Internet 的某处有一个现有的网络服务 运行,可以通过 DNS 名称
访问
- 您有一个由 Amazon Route 53 管理的域名(例如
example.com
)
- 您已成功将发送到
www.example.com
的请求重定向到您现有的网络服务
- 您还希望重定向
example.com
到您现有的网络服务
不幸的是,Internet 上的 DNS 规范 不允许在顶级域顶点 上进行 CNAME
重定向(例如 example.com
)。如果您需要将用户定向到 DNS 名称,这是不可能的。但是,如果您能够将用户重定向到特定的 IP 地址,那么您可以简单地在域顶点创建一个 A
记录,它将 example.com
解析为该 IP 地址。
Amazon Route 53 具有允许通过Alias
函数 重定向 DNS 顶点记录的特殊能力。此 可以 将流量重定向到:
- Amazon Elastic Beanstalk 环境
- Amazon CloudFront 分配
- 一个弹性负载均衡器
- 配置为静态网站的 Amazon S3 存储桶
遗憾的是,如果您的目标 Web 服务无法通过这些方法之一访问,您将无法重定向域顶点。
参见:Choosing Between Alias and Non-Alias Resource Record Sets
这是来自 AWS Support 的解决方案
分辨率:
使用以下过程重定向您的域。在这个例子中,我们将 example.com 重定向到 example.net.
要求:
- 域 example.com 的托管区域托管在 Amazon Route 53 中。
- 您有权将资源记录添加到 example.com 的托管区域。
- 您有权创建 Amazon S3 存储桶。
- 您可以使用 example.com 的确切名称创建 S3 存储桶。
注意:站点必须是 HTTP,因为重定向无法通过 HTTPS 连接到 S3。
- 在 Amazon S3 控制台中,创建一个名称与 example.com 完全相同的 S3 存储桶。
注意:S3 存储桶名称必须是全局唯一的。如果您需要的桶名已经被使用,则无法使用此方案
- 选择您刚刚创建的存储桶,然后选择“属性”。展开静态网站托管下拉菜单,然后 select 将所有请求重定向到另一个主机名。
- 在将所有请求重定向到另一个主机名字段中,输入 example.net,然后选择保存。
- 在 Route 53 控制台中,select 名为 example.com 的托管区域。
使用以下值为 example.com 创建资源记录:
- 记录类型:选择 IPv4 地址。
- 别名:选择是。
- 别名目标:Select 空白值字段,展开下拉菜单,然后在 header S3 网站端点下选择您的 S3 存储桶。
- 路由策略:选择简单。
- 评估健康目标:选择否,然后选择创建。注意:drop-down 菜单可能需要一些时间来填充您的存储桶名称。
您现在应该可以将 example.com 重定向到 example.net。您可以通过浏览至 example.com 或 CURL 至 example.com 来确认这一点。您应该在 curl 输出中看到“301 Moved Permanently”,重定向到 example.net.
我在 AWS Route 53 'www.derbyware.com' 中拥有一个域名,我在“http://node147934-env-7029269.phx.enscaled.us' on Jelastic. now for my users I want them to access the web application using www.derbyware.com not the ugly url 'http://node147934-env-7029269.phx.enscaled.us”有一个 Web 应用程序 运行。我成功地让 www.derbyware.com 作为网络应用程序的域名。现在非 www 'derbyware.com' 不起作用。
您可以测试这些网址。
澄清一下,您的情况似乎是:
- 您在 Internet 的某处有一个现有的网络服务 运行,可以通过 DNS 名称 访问
- 您有一个由 Amazon Route 53 管理的域名(例如
example.com
) - 您已成功将发送到
www.example.com
的请求重定向到您现有的网络服务 - 您还希望重定向
example.com
到您现有的网络服务
不幸的是,Internet 上的 DNS 规范 不允许在顶级域顶点 上进行 CNAME
重定向(例如 example.com
)。如果您需要将用户定向到 DNS 名称,这是不可能的。但是,如果您能够将用户重定向到特定的 IP 地址,那么您可以简单地在域顶点创建一个 A
记录,它将 example.com
解析为该 IP 地址。
Amazon Route 53 具有允许通过Alias
函数 重定向 DNS 顶点记录的特殊能力。此 可以 将流量重定向到:
- Amazon Elastic Beanstalk 环境
- Amazon CloudFront 分配
- 一个弹性负载均衡器
- 配置为静态网站的 Amazon S3 存储桶
遗憾的是,如果您的目标 Web 服务无法通过这些方法之一访问,您将无法重定向域顶点。
参见:Choosing Between Alias and Non-Alias Resource Record Sets
这是来自 AWS Support 的解决方案
分辨率:
使用以下过程重定向您的域。在这个例子中,我们将 example.com 重定向到 example.net.
要求:
- 域 example.com 的托管区域托管在 Amazon Route 53 中。
- 您有权将资源记录添加到 example.com 的托管区域。
- 您有权创建 Amazon S3 存储桶。
- 您可以使用 example.com 的确切名称创建 S3 存储桶。
注意:站点必须是 HTTP,因为重定向无法通过 HTTPS 连接到 S3。
- 在 Amazon S3 控制台中,创建一个名称与 example.com 完全相同的 S3 存储桶。
注意:S3 存储桶名称必须是全局唯一的。如果您需要的桶名已经被使用,则无法使用此方案
- 选择您刚刚创建的存储桶,然后选择“属性”。展开静态网站托管下拉菜单,然后 select 将所有请求重定向到另一个主机名。
- 在将所有请求重定向到另一个主机名字段中,输入 example.net,然后选择保存。
- 在 Route 53 控制台中,select 名为 example.com 的托管区域。
使用以下值为 example.com 创建资源记录:
- 记录类型:选择 IPv4 地址。
- 别名:选择是。
- 别名目标:Select 空白值字段,展开下拉菜单,然后在 header S3 网站端点下选择您的 S3 存储桶。
- 路由策略:选择简单。
- 评估健康目标:选择否,然后选择创建。注意:drop-down 菜单可能需要一些时间来填充您的存储桶名称。
您现在应该可以将 example.com 重定向到 example.net。您可以通过浏览至 example.com 或 CURL 至 example.com 来确认这一点。您应该在 curl 输出中看到“301 Moved Permanently”,重定向到 example.net.