如何将域请求转发到gae url

时间:2014-11-07 15:30:16

标签: google-app-engine dns forward

我有不同的客户在我的gae应用程序上拥有他们自己的托管saas页面。例如:

  • myapp.appspot.com/customer/123
  • myapp.appspot.com/customer/456

每个客户可能希望他的域名例如 theBigDomain.com 到“invisibilly”转发到 myapp.appspot.com/customer/123

请注意,我希望将theBigDomain.com/myservlet?id=theId#aBookmarkUrl作为myapp.appspot.com/customer/123/myservlet?id=theId#aBookmarkUrl

传输到目标网址

我搜索了谷歌文档,但我找不到办法。

注意:我不希望在theBigDomain.com类型的人发现他不再存在的情况下进行重定向,并且我不希望框架将我的网址包含在theBigDomain.com中,因为我想要用户为able to click on the back button

简而言之,我希望域名作为代理工作,知道从我所知道的,代理不适合某些内容,例如,如果我的目标链接有YouTube视频,这可能不起作用。所以我问是否有办法为网址而不是域名进行dns重定向???

使用子域名也是有限的:为每个客户创建一个子域名将是一项繁琐的工作......

1 个答案:

答案 0 :(得分:1)

  

使用子域名也是有限的:为每个客户创建一个子域名将是一项繁琐的工作......

怎么样?这对您/您的客户来说实际上要容易得多,因为您的客户不必处理域验证/ DNS设置,您需要做的就是为您的客户添加一个*(通配符)主机主域指向ghs.googlehosted.com并在您的GAE应用设置中添加*.yourdomain.com。在您的应用程序中,在您选择的框架中,您将看到请求所属的子域,并将其作为客户的唯一ID(而不是123/456)处理。 See here how you would determine the subdomain on python/webapp2。如果你正在使用不同的语言/框架组合 - 那么也有替代功能。

如果您仍然希望客户使用他们自己的域,那么它会变得更复杂一些。首先,他们需要为您提供完整的域名,然后将其添加到您的GAE应用程序设置中。接下来,您和您的客户需要按照此页面上列出的其中一个验证步骤进行操作:https://support.google.com/a/answer/60216?hl=en一旦完成,您需要让客户在其指向{{的域/子域上创建CNAME记录1}}。一旦创建了CNAME记录,您就可以处理这个问题,就像这些是您自己域中的子域一样,即在您的框架中确定请求来自哪个域并将其作为客户的唯一ID来处理该客户& #39; s app。