2015-02-05 2 views
0

У меня есть домен, и его записи DNS управляются с использованием AWS Route53.маршрут 53 CNAME с Nginx

У меня есть 30 серверов в центре обработки данных, у которых есть только частные IP-адреса, а сайты, размещенные на этих серверах, загружаются с использованием прокси-сервера nginx с открытым IP-адресом.

Для этого я создал запись A (скажем * .abc.com IPofproxy), затем я добавил некоторые правила перенаправления на прокси-сервере для загрузки соответствующих сайтов.

правило

Перенаправление на прокси-сервер следующим образом:

1.abc.com перенаправляет 1.1.1.1

2.abc.com перенаправляет 2.2.2.2

3.abc.com перенаправляет на 3.3.3.3 и т.д.

Но теперь я сталкивается проблема с синонимами,

проблема в том, я создал несколько CNAME записей как:

abc.abc.com CNAME 1.abc.com

def.abc.com CNAME 2.abc.com

fgh.abc.com CNAME 3.abc.com и т.д.

Затем я попытался получить доступ ко всем вышеперечисленным доменам (abc.abc.com, def.abc.com и т. Д.), Но все сайты указывают только на один сервер, который является первым в правилах перенаправления.

Я новичок в nginx, было бы здорово, если кто-нибудь поможет мне исправить это.

ответ

1

Если я правильно понимаю вашу конфигурацию, проблема, с которой вы столкнулись, конкретно не связана ни с маршрутом 53, ни с Nginx.

Вместо этого это связано с тем, как веб-браузеры взаимодействуют с записями DNS. У вас возникнет проблема с любым обратным прокси-сервером.

Вы должны настроить каждую запись CNAME в прокси-сервере, в индивидуальном порядке, так как браузер не заботится о записи CNAME - в Host: заголовке отправленного с каждым запросом является именем хоста браузера начал с, а не именем хоста браузер оказался после того, как пройдены любые CNAME.

a.example.com IN A  203.0.113.1 
b.example.com IN CNAME a.example.com. 

Запрос на b.example.com будет перенаправлен по доверенности в соответствии с его правилами b.example.com и не по своим правилам a.example.com, потому что CNAME не меняет Host: заголовка браузера, который является то, что прокси-сервер почти наверняка использует для своего решения о маршрутизации.

Если вы хотите получать запросы на b.example.com, он должен быть настроен в прокси, а не только в DNS.

Смежные вопросы