如何使用Route53从一个顶级域重定向到另一个域

时间:2015-04-16 08:52:20

标签: amazon-web-services amazon-route53

如果我的终止记录在这里不正确,请道歉

我让域名albunack.net在Route53上正常运行。 我还在Route 53控制下拥有域名albunack.com

我希望对albunack.com的任何请求重定向到albunack.net,并向用户显示他们在albunack.net上而不是albunack.com(通过webbrowser地址)

我尝试创建A记录作为alunack.com的别名并将别名目标设置为albunack.net但是没有用,它没有识别albunack.net,我打算怎么做?

4 个答案:

答案 0 :(得分:7)

您可以使用S3存储桶重定向到albunack.net。首先,您需要创建一个S3存储桶并将albunack.com指向它。

  1. 创建名为albunack.com的S3存储桶(名称很重要,必须与域名匹配)。
  2. 将存储桶配置为充当静态网站。在存储桶属性中执行此操作。转到静态网站托管,然后选择将所有请求重定向到其他主机名
  3. 输入http://albunack.net作为您要转发所有请求的地址。
  4. 转到Route 53并将albunack.com指向S3存储桶。您可以通过为S3存储桶创建别名记录来实现此目的。
  5. 现在,当用户访问albunack.com时,请求将转到S3存储桶,该存储桶将通过重定向到albunack.net进行响应。您可以在AWS博客上的Root Domain Website Hosting for Amazon S3处查看此技术的说明。

答案 1 :(得分:1)

不必使用s3存储桶进行重定向或将域转发到另一个域。对我来说,最简单的解决方案是在侦听器端口443和端口80上建立规则

  

如果Host为example.com,则重定向到   https://www.yourdomain.com:443/# {path}?#{query}状态代码:HTTP_301

和* .example.com的相同规则

请考虑为Route 53服务中的所有域都拥有相同 ssl证书。

Listener Rules for Your Application Load Balancer

答案 2 :(得分:0)

  

我想要将albunack.com的任何请求重定向到albunack.net和   也向用户显示他们在albunack.net上而不是albunack.com(通过   webbrowser地址)

这实际上是您需要从Web服务器执行的操作,而不是通过DNS。实际上,DNS也在切实参与。

您需要做的第一件事是将两个域解析为相同的IP地址。这可以通过如您所描述的那样为两个域创建A记录,或者将CNAME设置为另一个来完成。但无论你采取什么方法,所有DNS正在做的是将像albunack.net这样的域解析为IP地址。 DNS没有为Web浏览器提供切换到其他域的机制。

当您的请求进入albunack.com并将其重定向到albunack.net时,您的网络服务器将需要识别。具体如何执行此操作取决于您使用的Web浏览器。我熟悉Apache,所以这是一种使用虚拟主机定义的简单方法:

<VirtualHost *:80>
    ServerName albunack.com
    RedirectPermanent / http://albunack.net/
</VirtualHost>

您会发现在网络浏览器中的重定向已经在stackoverflow&amp; serverfault,所以如果您需要更多帮助来设置您正在使用的任何Web服务器中的重定向,那么我首先要搜索现有的答案。

答案 3 :(得分:0)

对于所谓的区域顶点,无法使用CNAME记录。 [1] [2]
我发现用别名记录无法实现这一目标。 [3]

但是,有一个技巧,如何在不涉及SSL的情况下使用HTTP代码301来实现区域顶点重定向。 [4]

AWS官员在论坛主题中解释了为什么无法重定向区域顶点:[5]

  

我们目前不支持将有时称为“区域顶点”的名称指向另一个DNS名称的方法。例如,很容易将www.example.com设置为srv123.ec2.amazonaws.com的CNAME。不幸的是,DNS规则在区域顶部禁止CNAME,因此您不能将example.com设置为srv123.ec2.amazonaws.com的CNAME。

他们提出了以下两种解决方法:

  

有两种主要方法可以实现让人们通过example.com访问您的网站的目标。某些网站使用HTTP“重写”服务,该服务仅发出从example.com到www.example.com的HTTP重定向。我们不提供此服务作为Route 53的一部分,但是您可以使用EC2自行设置。

     

另一种选择是通过为example.com配置一个或多个“ A”记录(地址记录),使example.com指向目标的IP地址。如果知道目标IP地址是固定的,则可以执行此操作,例如,如果您使用的是EC2弹性IP地址。对于诸如CloudFront分布之类的可变目标,目标IP地址一直在变化,因此您不能静态配置A记录。

参考文献

[1] https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/ResourceRecordTypes.html#CNAMEFormat
[2] https://forums.aws.amazon.com/thread.jspa?threadID=95588
[3] https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-values-alias.html
[4] https://aws.amazon.com/premiumsupport/knowledge-center/redirect-domain-route-53/
[5] https://forums.aws.amazon.com/thread.jspa?threadID=55995