Сопоставление пользовательского домена с веб-приложением [закрыто]

Мы создаем базовое приложение SAAS, в котором каждая компания получает свой собственный поддомен. Но если компания хочет настроить другой домен с нашим приложением, они могут это сделать.

например. Я компания, зарегистрированная в приложении www.saas.com, у меня есть поддомен company.saas.com, теперь я хочу привязать свой домен company.com к company.saas.com, так как мы можем этого добиться?

я знаю, что это можно сделать с помощью Cname, но есть ли способ динамического обновления Cname?

3
задан 20 June 2017 в 14:53
2 ответа

Это полностью зависит от того, как ваше приложение выполняет определение имени хоста . Например. если он работает по HTTPS, вам необходимо добавить виртуальный хост на свой веб-сервер. На основании того, что вы в настоящее время используете subdomain.saas.example.com , и программа способна это определить, мы можем сделать вывод, что это должно быть возможно. Вы просто будете использовать тот же метод идентификации имени хоста, что и в текущем решении.

На уровне DNS вы должны использовать запись A , указывающую на тот же IP-адрес . Это потому, что использование записи CNAME вызывает только другой поиск DNS для записи company.saas.example.com IN A и не вызывает никаких изменений в обнаруженном имени хоста, поэтому вы не получил бы никакой пользы от его использования; т.е. это не ярлык для предотвращения настройки этого метода определения имени хоста.

Если вы хотите использовать CNAME (например, если IP-адрес для *. saas.example.com может измениться без уведомления клиента), вам следует посоветовать использовать поддомен, например saas.example.net вместо example.net . Это связано с тем, что при использовании записи CNAME вы не можете использовать какие-либо другие записи на том же имени хоста. С самим доменным именем это означает, что вы теряете возможность добавлять записи MX , TXT , NS и т. Д. Это предотвратит использование одного и того же домена для электронной почты и т. Д.

0
ответ дан 3 December 2019 в 07:53

Вы можете использовать RewriteRule для перенаправления запросов на определенный DocumentRoot, и вы можете добавить динамику правила в файл .htaccess.

Было бы лучше добавить виртуальные хосты в файлы конфигурации Apache, но тогда вам необходимо перезапускать Apache после каждого изменения.

.htaccess:

RewriteEngine On

RewriteCond %{HTTP_HOST} (clientone.saas.example.com)
RewriteRule ^(.*)$ /clientonefolder/$1 [R=301,L]

RewriteCond %{HTTP_HOST} (clienttwo.saas.example.com)
RewriteRule ^(.*)$ /clienttwofolder/$1 [R=301,L]
0
ответ дан 3 December 2019 в 07:53

Теги

Похожие вопросы