В настоящее время я использую LAMP
конфигурацию как для своей целевой страницы, так и для веб-приложения и для API. Теперь я хотел бы разделить эти вещи на несколько виртуальных серверов (VS). Я не уверен в настройках сети и перед тем, как испортить все настройки DNS, я бы хотел понять, не грозит ли мне моя конфигурация.
Целевая страница размещается в second level domain
(например myurl.com
), веб-приложение размещается в домене нижнего уровня app.myurl.com
, а API - в api.myurl.com
. У меня также есть предварительный просмотр домена:, preview.myurl.com
используемый для тестирования.
Так как все организовано на том же ВС, я в настоящее время есть также четыре различные папки ( landing
, api
, webapp
, preview
), которые выступают в качестве «виртуальных хостов» для каждого поддомена.
Моя конфигурация DNS выглядит так:
myurl.com. A 300 123.123.123.123
www.myurl.com. CNAME 300 myurl.com.
api.myurl.com. CNAME 300 myurl.com.
app.myurl.com. CNAME 300 myurl.com.
preview.myurl.com. CNAME 300 myurl.com.
Для начала я хотел бы изменить данные каждой записи CNAME на фактический IP-адрес текущего VS. Чтобы это выглядело так:
myurl.com. A 300 123.123.123.123
www.myurl.com. CNAME 300 myurl.com.
api.myurl.com. CNAME 300 123.123.123.123
app.myurl.com. CNAME 300 123.123.123.123
preview.myurl.com. CNAME 300 123.123.123.123
Тогда идея состоит в том, чтобы указать каждому поддомену соответствующий VS. Первоначально все домены более низкого уровня (кроме www.
) будут по-прежнему указывать на текущий VS, в то время как домен второго уровня для целевой страницы ( A
запись для myurl.com.
) должен будет указывать на новый IP
для нового VS.
Вопросов:
- Будут ли эти изменения влияют на способ , в котором текущий сервер Apache распределяет трафик на каждую вложенную папку (т.е.
landing
,api
,webapp
,preview
)? Если так, даже если всеIP
адреса остаются прежними? - Чтобы проверить это, могу ли я начать с изменения только
data
значенияpreview.myurl.com.
без риска для компромисса с остальными? - После того, как все домены более низкого уровня (например , api.myurl.com) точка к IP виртуальной машины, можно указать
A
значениеmyurl.com.
для другого IP без ущерба для других доменов более низкого уровня (api
,app
,preview
)?
A
вместо этого использовать записи:app.myurl.com. A 300 10.123.123.123
Ответы:
Как упоминалось в комментариях, вам нужно будет использовать записи A вместо записей CNAME. Записи CNAME не смогут указывать на IP-адрес.
Ключом к тому, чтобы заставить работать каждый из сайтов, является правильное указание ServerName для каждого виртуального сервера в конфигурации Apache.
источник
Используйте
A
запись, чтобы указать на поддоменовисточник