【问题标题】:How to use Google App Engine with my own naked domain (not subdomain)?如何将 Google App Engine 与我自己的裸域(不是子域)一起使用?
【发布时间】:2010-10-23 12:00:34
【问题描述】:

在阅读和试验 DNS 记录数小时后,我可以通过以下 URL 访问我的 Google App Engine 应用:

  • myappid.appspot.com
  • www.myappid.myowndomain.com

什么不起作用:

  • myowndomain.com
  • www.myowndomain.com

我希望能够直接从我的域而不是子域中提供我的应用程序。我见过这样做的应用程序。有没有办法在没有 URL 重定向的情况下做到这一点?

【问题讨论】:

    标签: google-app-engine dns google-cloud-platform


    【解决方案1】:

    [2016 年 4 月更新] 此答案现已过时,支持自定义裸域映射,请参阅 Lawrence Mok's answer

    我想通了!

    首先:不可能将mydomain.com 之类的内容与您的appspot 应用程序相关联。这被认为是一个裸域,Google App Engine(不再支持)。严格来说,我的问题的答案必须是“不可能的”。继续阅读...

    您所能做的就是添加指向您的应用的子域,例如myappid.mydomain.com。将您的顶级域链接到您的应用的关键是要意识到 www 是一个子域!

    myappid.mydomain.com 的处理方式与www.mydomain.com 完全相同!

    步骤如下:

    1. 访问 appengine.google.com,打开您的应用
    2. 管理 > 版本 > 添加域...(您的域必须与您的 Google Apps 帐户相关联,请按照包括域验证在内的步骤进行操作。)
    3. 访问 www.google.com/a/yourdomain.com
    4. 仪表板 > 您的应用程序应在此处列出。点击它。
    5. myappid 设置页面 > 网址 > 添加新网址
    6. 只需输入www并点击添加
    7. 使用您的域托管服务提供商的 Web 界面,为您的域添加 www 的 CNAME 并指向 ghs.googlehosted.com

    现在您已将 www.mydomain.com 链接到您的应用。

    我希望这在文档中更明显......祝你好运!

    【讨论】:

    • 嘿,我的错——我以为你知道 www 和其他任何子域一样,但应该考虑将其拼写出来!
    • 要让裸 mydomain.com 工作,只需将其重定向到 www 子域。
    • 为了简单地设置自定义域而需要设置 Google Apps 是完全不直观的,几乎是迟钝的。这就像强迫一个人使用火箭发射器拍打一只蚊子。
    • 看起来 Google 已经更新了文档。 cname 值应为 ghs.googlehosted.com
    • 请参阅下面 Laurence Mok 的回答:现在可以直接从 Developers Console 中进行。
    【解决方案2】:

    [2015-09-28 更新] 现在,Google 允许您添加自定义域(包括裸域)并设置 SSL,而无需使用 Google Apps。详情参考这里:https://cloud.google.com/appengine/docs/using-custom-domains-and-ssl?hl=en

    我今天刚刚发现(截至 2014 年 4 月 11 日)Google Developers Console 提供了一个新的自定义域设置页面:

    1. 转至https://console.developers.google.com/project 2. 点击你的项目 3.在左侧点击“App Engine” 4.点击“设置”

    给你!您可以配置自定义域而无需 Google App 帐户!

    【讨论】:

    • 在第 3 步中显示为 XXX.com 域创建下面列出的资源记录,这是什么意思?
    • @KunalBalani 这意味着您需要编辑您的域的 DNS 记录(请与您注册域的地方联系以获取说明)
    • 请注意,此方法不支持 SSL——这很糟糕。我仍在寻找解决方法。
    • @capitalf 谷歌表示它“即将推出”,并且像往常一样没有预计到达时间。我也试图寻找工作,但没有。我现在能得到的最接近的是 https 为 www 工作,http 为 www 工作。和裸体(将它们重定向到 https www)
    • 请注意,这是截至 2014 年 4 月的正确答案。该日期之前的答案是指在更好地支持自定义域之前的解决方法。 SSL 即将推出。
    【解决方案3】:

    [2016 年 4 月更新] 此答案现已过时,支持自定义裸域映射,请参阅 Lawrence Mok's answer

    详情请见http://www.google.com/support/a/bin/answer.py?hl=en&answer=91077。为您的域注册 Google Apps 后:

    # Sign in to the Google App Engine admin console.
    # Go to Administration > Versions
    # Click the 'Add Domain...' button under Domain Setup.
    # Enter your domain name in the 'Domain Name:' field
    # Click 'Add Domain'. You will be directed to the Google Apps administrator console to complete the process.
    # Log in to the Google Apps control panel with your administrator account.
    # Accept the terms and specify the access URL you'd like to provide for your application.
    # Click 'Accept
    

    您不能使用域,例如whatever.com(但www.whatever.com可以工作),因为:

    由于最近的更改,Google App Engine 不再支持映射 您的应用程序到一个裸域。如果您的域名注册商支持 URL 重定向,您可以从http://yourdomain.com 重定向到您的应用, 可以从http://www.yourdomain.comhttp://appid.yourdomain.com.

    http://www.google.com/support/a/bin/answer.py?answer=91080指定

    【讨论】:

    • 感谢您的快速回复。我已经完成了所有这些,我将我的域添加到了我的 Google Apps 帐户。现在我的应用程序被列为服务。主域设置为 mydomain.com,我的应用列出了子域 (www.myappid.mydomain.com)。我肯定错过了什么。添加子域立即生效,所以我怀疑这是一些更新/DNS/设置问题...当我转到 www.mydomain.com 时,我得到“未找到服务器”。
    • 我想我也有同样的问题...添加“www.”谷歌应用引擎网址没有响应。现在 wehearttoronto.com 正在指向 google 网站...
    • 自问题 777 得到解决后,Appengine 现在再次支持 Naked Domans,并且不必先为域设置 GoogleApps。最后一条评论有非常简短的说明。但是,该过程基本上与 Alex 的原始帖子中描述的一样。 code.google.com/p/googleappengine/issues/detail?id=777
    【解决方案4】:

    如果您像我一样在尝试将“www”添加为子域以使您自己的域正常工作时看到此消息:

    '已经使用,请删除以前的 先映射。 '

    如果您将 Google Apps 用于您的域,则其他答案中提到的上述过程略有变化。

    您现在也必须这样做:

    Google Apps -> 服务设置 -> 网站。点击“网址映射”,将站点默认添加的“www”映射去掉。

    然后您可以为您的 App 引擎应用添加“www”子域

    查看此链接:

    http://groups.google.com/group/google-appengine/web/deleting-existing-www-mapping-from-google-apps

    【讨论】:

      【解决方案5】:

      Google 给出的另一个解决方案是 URL 转发:http://www.google.com/support/a/bin/answer.py?hl=en-in&answer=61057

      【讨论】:

        【解决方案6】:

        Google 确实提供裸域重定向。

        • 登录您的 Google Apps 帐户并选择“管理此域”
        • 导航到域设置
        • 在域设置中,导航到域名
        • 有一个链接显示“更改 A 记录”。单击该按钮将为您提供需要创建的 A 记录的目标 IP。

        【讨论】:

          【解决方案7】:

          Google 不提供 IP 供我们设置 A 记录。如果可以的话,我们可以使用裸域。

          还有另一种选择,通过将 A 记录设置为外国 Web 服务器的 IP,该服务器可以将 http 重定向从例如 domain.com 到 www.domain.com(查看 GiDNS

          【讨论】:

            【解决方案8】:

            我知道所有这些步骤,实际上以下是简短而奇妙的方法。

            1 - 转到 appengine.google.com,打开您的应用

            2 - 管理 > 版本 > 添加域...(您的域必须链接到您的 Google Apps 帐户,请按照包括域验证在内的步骤进行操作。)

            3 - 转到 www.google.com/a/yourdomain.com

            4 - 仪表板 > 您的应用应在此处列出。点击它。

            5 - myappid 设置页面 > 网址 > 添加新网址

            6 - 只需输入 www 并点击添加

            7 - 使用您的域名托管服务提供商的网络界面,为您的域名添加 www 的 CNAME 并指向 ghs.googlehosted.com

            8 - 现在您已将 www.mydomain.com 链接到您的应用。

            • 如果您想要裸域,即 mydomain.com,请使用您的 DNS 管理员(不在 Google Apps 中)的重定向并将其指向 www.mydomain.com。

            现在我已经完成了这一切,我可以使用我的自定义域成功访问我的 appengine 应用程序。例如http://cic.mxhttp://www.cic.mx 都将我带到我的应用程序。但是 URL 更改为 -myappid-.appspot.com,我不希望它发生!

            有人解决了这个问题吗?

            我在 appengine 上使用一个 php 应用,带有一个 wordpress 实例。

            【讨论】:

              【解决方案9】:

              对于 2019 年的 App Engine,google 让设置自定义域变得更加容易。

              1. Google App Engine -> 设置 -> 自定义域

              2. Verify your domain

              3. Select Your Domain Name Registra

              提醒:在没有现有 CNAME 记录的情况下使用具有 Google 提供的值的 TXT 记录,否则 TXT 记录将被覆盖

              1. 按照页面上的步骤操作,包括配置子域、CNAME 记录、A 记录、AAAA 记录,一切顺利。

              【讨论】:

                【解决方案10】:

                几个小时后终于设法解决了这个问题。 www 子域指向站点,但前端没有向我显示。

                在尝试将 CNAME 设置为 gwh.google.com,并启用/禁用站点几次(请参阅 Rodrigo Moraes 在http://groups.google.com/group/google-appengine/web/deleting-existing-www-mapping-from-google-apps 上的评论)之后,我能够设置站点地址以使用www 子域。

                然后我可以将其更改为不再使用 www 子域,此时 appengine 应用程序允许我指定 www 子域。

                这是一个肮脏的修复 - 基本上是打开和关闭站点,直到它正常工作!

                【讨论】:

                  【解决方案11】:

                  当您进入“应用程序设置 -> 添加域”时,它会要求选择登录帐户,可能您已经在 gmail 帐户上,因此它也会显示 gmail 帐户,但您应该使用 Google Apps 帐户您已映射您的自定义域

                  【讨论】:

                    【解决方案12】:

                    您可以在 godaddy 中重定向或屏蔽您的域名,但我不知道其他托管站点。看看这个link

                    【讨论】:

                      【解决方案13】:

                      这是来自 Google 的关于将您的应用映射到自定义域的教程:https://cloud.google.com/appengine/docs/domain?hl=FR

                      它应该是最新的更新。但请注意以下两点:

                      1- 您可能在新的开发者控制台中找不到您的应用程序,那么唯一的解决方法是下载您的源代码,从新的开发者控制台创建一个新应用程序并进行部署。

                      2- 您在开发者控制台上找到您的应用程序,但在计算菜单下您可能找不到本教程中提到的 App Engine 设置,那么您必须按照我在第一点中的说明进行操作(创建另一个申请)

                      我希望这会有所帮助!

                      【讨论】:

                        【解决方案14】:

                        您可以为您的 App Engine 创建一个自定义域(包括裸域),也可以在那里设置自我管理的 SSL 证书。

                        要使用自定义域,请将域映射到您的应用,然后更新您的 DNS 记录。您可以映射裸域,例如 example.com 或子域,例如 subdomain.example.com。您还可以使用通配符来映射子域。

                        将自定义域映射到您的应用程序的步骤如下 -

                        1. 在控制台中,转到 App Engine 设置页面的应用程序设置选项卡 -->如果您需要启用G Suite认证然后点击Edit修改Google Accounts API Referrer-->在Google Authentication下拉菜单中,选择G Suite domain,然后在空白处添加您的域名例如example.com字段。

                        2. 转到 App Engine 设置页面的自定义域选项卡-->点击添加自定义域-->如果您的域已经过验证,则从下拉菜单中选择它-->点击继续。

                        如果您尚未验证您的域,请按照以下步骤操作:

                         a) Select Verify a new domain from the drop-down menu.
                        
                         b) Enter your naked domain name (such as "example.com") and click Verify.   
                                  
                         c)  Enter information in the Webmaster Central window that appears. 
                        
                         d) After you complete the steps in Webmaster Central, return to the Add a new    
                         custom domain page in the Google Cloud Console.
                        
                        1. 在将您的域指向(项目 ID)部分中,指定您要映射的域和子域。我们建议映射裸域和 www 子域-->单击保存映射。

                        2. 登录您的域名注册商网站并更新您的 DNS 记录。

                        有关所需步骤的详细说明,请参阅以下链接-

                        https://cloud.google.com/appengine/docs/standard/python/mapping-custom-domains

                        【讨论】:

                          【解决方案15】:

                          你必须这样尝试,Application Settings > Add Domain...

                          【讨论】:

                          • 欢迎来到 SO。这是一个答案吗?你能详细说明一下吗?
                          猜你喜欢
                          • 2016-07-10
                          • 2023-04-11
                          • 2020-11-21
                          • 2014-01-12
                          • 2010-12-30
                          • 2014-07-05
                          • 2014-05-24
                          • 1970-01-01
                          • 1970-01-01
                          相关资源
                          最近更新 更多