Я участвую в разработке конструктора сайтов, размещенного на Google Appengine.
Проект связан с доменом с подстановочными знаками (например, * .foo-bar.com), и затем мы используем поддомен, чтобы определить, какой сайт запрашивается, и динамически генерировать содержимое на основе метаданных.
До сих пор этих доменных имен было достаточно. Однако теперь у нас есть клиенты, желающие связать собственный домен со своими сайтами.
Лучшее решение, которое мы придумали, - это создать виртуальную машину GCE, на которой будет работать ha_proxy, что позволит нам перенаправить их домены на наши обычные. Это решение имеет очевидный недостаток, заключающийся в добавлении новой машины в инфраструктуру и еще одной услуги, которую мы должны обслуживать.
Мы также рассмотрели балансировщик нагрузки Google, но это не только потребовало бы от нас написания дополнительного программного обеспечения, но также привело бы к ежемесячным дополнительным расходам.
Есть ли более разумный способ сделать это?
РЕДАКТИРОВАТЬ:
Если, например, мы хотим, чтобы 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
Теперь можно довольно легко добавить много пользовательские домены в приложение App Engine. Вам нужно будет доказать, что у вас есть доступ к домену, и настроить CNAME, но в остальном вы сможете это сделать.