Назад | Перейти на главную страницу

CNAME указывает на домен, а не на субдомен

У меня есть приложение SAAS, которое имеет 3 разных поддомена.

example.com 
app.example.com
support.example.com 

Я хочу использовать White Label услуги только в support.example.com

Пример: testcompany.com требует услуг для моего support.example.com

Для этого мне нужно что-то вроде support.testcompany.com который должен в основном загружать support.example.com интернет сайт.

Я создал запись CNAME в testcompany.com DNS, указывая на support.example.com

Но example.com загружается вместо support.example.com

Как мне решить эту проблему? Это правильный путь или есть другой подход?

Неважно, используете ли вы A запись, указывающая на тот же IP-адрес или CNAME запись, указывающая на другое имя хоста, которое в конечном итоге указывает на IP-адрес. Браузер всегда отправляет Host: Заголовок HTTP, содержащий имя хоста в адресной строке.

Следовательно, ваш VirtualHost для support.example.com требуется псевдоним для других имен хостов, например support.example.net и support.example.org.

<VirtualHost *:80>
    ServerName support.example.com
    ServerAlias support.example.net support.example.org
    . . .
</VirtualHost>

В противном случае веб-сервер покажет виртуальный хост по умолчанию, который в этом случае кажется example.com.

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

Запись DNS CNAME указывает только имя хоста на то же самое. сервер на которое указывает целевое имя хоста.

Он не настраивает автоматически веб-сервер для загрузки одних и тех же веб-сайтов для обоих имен хостов. Это требует дополнительной перенастройки программного обеспечения веб-сервера, то есть Apache, Nginx.

(Вы несколько обойдете эту проблему, назначив один веб-сайт VirtualHost по умолчанию который всегда будет отображаться, когда для доступа к веб-серверу используются неизвестные имена хостов, но это работает только для простого http, а не столько для https)