我参与了托管在 Google Appengine 上的网站构建器的开发。
该项目与通配符域名(例如 *.foo-bar.com)相关联,然后我们使用子域名来确定正在请求的站点并根据元数据动态生成内容。
到目前为止,这些域名已经足够了。但是,现在我们的客户希望将自定义域名与其网站关联。
我们想出的最佳解决方案是创建一个运行 ha_proxy 的 GCE VM,这样我们就可以将其域重定向到我们常用的域。此解决方案的明显缺点是需要向基础架构添加一台新机器,并需要我们维护另一项服务。
我们也考虑过谷歌的负载均衡器,但这不仅需要我们编写额外的软件,而且最终每个月的费用也会增加。
有没有更聪明的方法来做到这一点?
编辑:
例如,如果我们想将 www.client1-domain.com 重定向到 client1.foo-bar.com,我们可以做两件事:
(1)要求我们的客户将其域名指向我们的 ha_proxy
(2)向我们的ha_proxy添加新的配置,例如:
acl host_client1 hdr_end(host) -i www.client1-domain.com
use_backend client1_cluster if host_client1
backend client1_cluster
...
server client1 client1.foo-bar.com cookie A check
答案1
现在可以相当容易地添加大量自定义域名到 App Engine 应用。您需要证明您有权访问该域名,并设置 CNAME,但除此之外您应该能够做到这一点。