1

我正在将我的应用程序部署到主域 www.mysite.com 的 GAE。当有人订阅我的应用程序时,他将使用电子邮件 ID username@company.com。

我想从电子邮件 id 中获取公司,并将 URL 设置为 company.mysite.com,它将映射到 www.mysite.com。我认为这可以通过在域注册商 cpanel 上使用 * 通配符 CNAME 来完成。但是,根据线程如何设置动态子域跨服务器或在 DNS 设置中,我们无法使用 GAE 设置通配符域。

所以,我的问题是我应该如何从电子邮件 ID 以编程方式进行操作,这样我就不必为每个公司手动设置子域?我可以在 GAE 上使用通配符子域还是需要对 AWS 的 route53 做一些研究?

请注意,我已经从 godaddy 注册了我的域名。

4

2 回答 2

3

与此同时,GAE 已经更新,现在完全支持子域通配符:自定义域文档

也就是说,我在 Godaddy 上也遇到了通配符问题。Godaddy 上的通配符是**但仍然不起作用,我需要手动添加子域。顺便说一句,我还没有为此寻找解决方案,我更喜欢将名称服务器指向其他地方。

如果你使用 webapp2 看看Domain and subdomain routing,看起来很有趣。

于 2013-02-04T23:18:44.643 回答
0

指示

  1. 注册 AWS Route53
  2. 在您的新 Route53 帐户中,创建一个新的托管区域,该值是您在 GoDaddy 上托管的域(在您的示例中,区域名称为mysite.com
  3. 现在按照此处的步骤在“为向我们注册的域名设置名称服务器”>>“我的域有特定的名称服务器”下(您将输入在第 2 步中提供给您的名称服务器)
  4. 现在,此域需要是 Google Apps 域,因此如果不是,请注册 Google Apps 或将域添加到您现有的 Google Apps 帐户。
  5. 完成自定义域设置过程*,但在步骤 5 中输入您的子域
  6. 返回到您的 Route53 控制台并将新记录集添加到您在步骤 2 中创建的托管区域。将类型切换为CNAME,输入*作为名称,值应设置为ghs.googlehosted.com(或通过设置过程提供给您的任何内容在步骤 5)

仅此而已。您必须等待 DNS 设置正确传播,但现在wildcard.mysite.com应该指向您的应用程序。

笔记

这将允许任何通配符指向您的应用程序。请参阅上面链接的自定义域设置过程页面中有关通配符子域映射的更多信息下的注释。您可以通过处理应用程序中的值并为您不想确认的子域返回 404 错误等来限制应用程序中“允许”的子域(在您的用例中,任何不是公司名称的值)已注册您的应用程序的用户)

于 2013-02-05T14:28:02.197 回答