我想为AWS API Gateway端点使用自定义域,这样我就可以使用mydomain.com
代替https://xxxxxxxx.execute-api.eu-west-1.amazonaws.com/v1
。
我设法在API网关中添加自定义域,但现在我需要设置域的DNS(此域不由Route53管理)。
据我所知,我应该设置一条A记录,但我没有提供由cloudfront发行版提供的任何IP,而且它不能是CNAME,因为我想绑定域(apex)而不是子域。< / p>
如何在不将DNS管理转移到Route 53的情况下设置域名?
谢谢
答案 0 :(得分:1)
这是不可能的。 Route 53具有特殊功能,允许您将域的顶点别名为另一个AWS资源,而不使用CNAME记录 - 这在域的顶点无效。
您不必将域名注册转移到Route 53 - 这是可选的 - 但您必须创建托管区域并配置现有注册商以使用名称服务器Route 53分配给您的新托管区域是您的权威名称服务器。无论是否转移注册本身都不会影响性能 - 当您的域名主机和注册商是两个不同的提供商时,查询既不慢也不快。
答案 1 :(得分:0)
我在同一个问题上作了很多努力,实际上找到了解决方法in this gist。正如要点所建议的那样,您需要在Route 53中创建一个“托管区域”(不需要转移域或类似的内容)。
一旦创建区域,就会在其中创建NS记录。他们看起来像这样:
ns-1208.awsdns-23.org.
ns-2016.awsdns-60.co.uk.
ns-642.awsdns-16.net.
ns-243.awsdns-30.com.
只需复制NS(名称服务器)记录,然后在DNS提供商的控制面板上替换您的域名记录即可。 NS记录可用于将DNS管理从其他域注册商指向AWS Route 53
这可能需要一段时间才能更新(大约1-2天)。您可以继续在此托管区域中创建别名记录,以将顶点域指向您的API网关(或不提供静态IP的类似AWS服务)。