是否可以在不添加自定义域的情况下将CNAME转发到Google App Engine

时间:2016-02-11 07:32:24

标签: google-app-engine dns cname

www CNAME转发到Google App Engine应用程序时出现此问题。这不行,也许我错过了什么。

是否可以在没有adding custom domain的情况下将CNAME转发到Google App Engine?

1 个答案:

答案 0 :(得分:5)

您链接的文档实际上包含您的问题的答案:您必须使用通配符向您的应用添加自定义域。

以下是您必须将每个域添加到自定义域的原因。

创建cname时,它始终指向 ghs.googlehosted.com 。我的猜测是该域后面的服务器是一个巨大的负载均衡器,但这在这里并不重要。重要的是,在发出HTTP请求之前,DNS名称将解析为IP地址。所有appengine应用程序的IP地址范围都相同,因此服务器不知道此特定请求是否适用于您的应用程序。但是,使用该IP地址,将向服务器打开TCP连接。现在您发送一个请求:

GET / HTTP/1.1
HOST: www.yourcustomdomain.com

服务器查看HOST部分,并且必须决定应将此请求转发到哪个应用。但是,如果您没有将域添加到项目的自定义域中,则无法知道。根本没有关于在哪里路由该请求的信息。所以简单的答案是:

  • 是的,您必须将所有自定义域添加到项目中,但您可以使用通配符
  • 如果没有这一步,它就行不通,因为Google基础设施包含大量应用程序,而您的应用程序没有可用于识别的专用IP地址