【发布时间】:2017-01-27 08:04:27
【问题描述】:
我有一个正在运行的 Google App Engine,并且我购买了一个域。为了将两者联系起来,我关注了the official guide。
具体来说,该指南建议设置这些 DNS 规则:
问题是,我同时拥有裸域 (site.com) 和 www 子域 (www.site.com)。按照指南,我设置了以下规则:
Type Name Value
A site.com. 216.239.32.21
A site.com. 216.239.34.21
A site.com. 216.239.36.21
A site.com. 216.239.38.21
(other AAAA for site.com.)
CNAME www.site.com. ghs.googlehosted.com
问题
我认为我所做的是正确的,因为它有效:我可以输入 site.com 和 www.site.com 并被定向到我的应用程序。但是我对 www 子域有些困惑。
什么是 ghs.googlehosted.com ,为什么 www 子域需要 CNAME?为什么 www 没有 A 记录?
子域如何工作?我没有 A 记录,只有这个 CNAME,但它仍然指向我的 IP。
我不明白该指南说:
通常您将主机名与规范名称一起列为 地址。在我们的示例中,您要添加的记录之一是主机 使用地址 ghs.googlehosted.com 命名 www。 (如果您使用裸 域,您将使用 @ 作为主机名和相应的值 来自添加新的自定义域表单。)
你能解释一下这一段的意思吗?这是什么@?
【问题讨论】:
-
想解释一下这个问题有什么问题吗?有多个问题,但如果您知道 ghs.googlehosted.com 是做什么的,您可以立即回答。如果你不这样做,那么你没有。我无法通过我的研究找到此信息,并且从未在 SO AFAIK 上询问过。
-
除非您的网站由 Google App Engine 或 Google 协作平台 (ghs.googlehosted.com) 托管,否则此设置无法运行。刚刚在我的域名注册商和本地 DNS 服务器上进行了测试。你如何检查它是否指向你的服务器?使用 DNS 查询还是使用 HTTP 等应用层协议?
-
@Dieter 我有一个在 Google App Engine 上运行的应用程序,我正在遵循他们的指南。我知道它的工作原理仅仅是因为我可以通过 HTTP 连接到 site.com 和 www.site.com。
-
但是您应该知道您的子域指向网关/负载均衡器 (ghs.googlehosted.com) 的 IP 地址,它将 HTTP 请求转发到您的 IP 地址。此转发不是通过 DNS 完成的。
-
@Dieter 是的,但这不是我的问题。我的问题是为什么我被要求为 site.com(指向 216.239.3X.21 的记录)和 www.site.com(指向 DNS 解析的 ghs 的 CNAME)做不同的事情 216.58.194.83)。
标签: google-app-engine dns subdomain cname