答案1
您需要将子域名设置为资源记录:https://support.google.com/domains/answer/3290350
注册主机(“粘合记录”)主要用于名称服务器。合成记录主要用于第三方集成。
进行更改后,您可能还会遇到子域名指向的站点重定向到 IP 地址的问题。您可以使用 curl 等工具来验证:curl -I -X GET http://subdomain.domain/
如果 curl 的输出显示 301 或 302 之类的内容,则表明网站本身也在重定向,您需要查看原因。浏览器可能还会缓存任何重定向,因此您可能需要清除缓存并重新启动浏览器。
答案2
感谢@rob-olmos 指出正确的资源记录。分享完整的解决方案,这可能会对其他人有所帮助。
我最终在 AWS Route 53 中创建了一个托管区域和 2 个记录集:1) 一个类型为 的记录集NS
和 2) 一个类型为 的记录集A
。1) 前者为 生成了 4 个名称服务器subdomain.mydomain.com
,示例如下:
ns-2048.awsdns-64.com
ns-2049.awsdns-65.net
ns-2050.awsdns-66.org
ns-2051.awsdns-67.co.uk
这里有关 Rout 53 NS 的更多详细信息。
2)后者的记录集subdomain.mydomain.com
与 EC2 实例的实际 IP 进行映射。
这doc 描述了如何将流量路由到 EC2,但它仅涵盖第二个记录集(添加类型 A 映射)并且缺少 NS 记录。
下一步是添加类型为国家标准(类型 A 对我来说不起作用,因为它会暴露 IP 地址)子域名在您的注册商(我的情况是 google domains)中。国家标准资源记录类型对于路由流量而不暴露服务器的 IP 地址至关重要。因此,我在 Google Domains 中访问Custom resource records
并添加了在 Route 53 中生成的 4 个 ns 名称服务器。
就是这样,效果非常好。