fre*_*ley 89 dns amazon-web-services amazon-route53
我拥有foo.com和bar.com.我在Route53管理两个.foo.com托管我的网站,我想引导流量bar.com到foo.com.我试图设置一个指向的CNAME记录,但我收到了错误消息:bar.comfoo.com
RRSet of type CNAME with DNS name foo.com. is not permitted at apex in zone bar.com.
Run Code Online (Sandbox Code Playgroud)
为什么这不起作用,我该怎么办呢?
Ioa*_*ucu 77
根据RFC1912第2.4节:
A CNAME record is not allowed to coexist with any other data. In
other words, if suzy.podunk.xx is an alias for sue.podunk.xx, you
can't also have an MX record for suzy.podunk.edu, or an A record, or
even a TXT record. Especially do not try to combine CNAMEs and NS
records like this!:
podunk.xx. IN NS ns1
IN NS ns2
IN CNAME mary
mary IN A
Run Code Online (Sandbox Code Playgroud)
RFC非常有意义,因为名称服务器不知道它是否需要跟随CNAME或者回答CNAME重叠的实际记录.bar.com是一个区域,因此它隐含地具有该bar.com名称的SOA记录.您不能同时拥有SOA记录和具有相同名称的CNAME.
但是,鉴于SOA记录通常仅用于区域维护,因此您希望在区域顶点提供CNAME的这些情况非常常见.即使RFC禁止它,许多工程师也会喜欢这样的行为:"遵循CNAME,除非查询明确要求提供SOA记录".这就是Route 53提供的原因alias records.这些是Route 53特定功能,可提供您所需的确切功能.看看http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingAliasRRSets.html
小智 54
bar.com.(该名称必须与您要重定向的域名相同才能使其正常工作!)bar.comS3 Bucket中,转到Properties> Static Website Hosting,选择Redirect all requests to another host name并foo.com在文本框中输入.Hosted Zonefor中bar.com,点击Create Record Set.选择A - IPv4 address类型.点击Yes查看Alias.单击文本框Alias Target.bar.com应列在下面-- S3 Website Endpoints --.保存记录.等几分钟,你应该有一个重定向设置,将请求从bar.com重定向到foo.com.您可以使用相同的方法将裸域重定向到子域(如www).我在www.foo.com必须是CNAME的情况下使用它,因此我使用相同的方法从foo.com重定向到www.foo.com.如果foo.com是A记录,您可以使用此技术从www.foo.com重定向到foo.com.
注意:此方法将以完整路径转发.即http://bar.com/test将转发至http://foo.com/test.
在Route53上,您需要创建A记录而不是CNAME记录,并在该记录下创建别名。
来自@ewalshe对Alexandru Cucu的回答的评论,如果您是来这里尝试使用自定义域名设置API Gateway并具有Cloudfront发行网址的。
| 归档时间: |
|
| 查看次数: |
62572 次 |
| 最近记录: |