Экземпляр AWS VPC не разрешает общедоступное DNS-имя

Эта проблема:

Мой URL-адрес xyz.co превращается в уродливое общедоступное DNS-имя AWS, такое как ec2-11-22-33-44.ap-southeast-2.compute.amazonaws.com. Он не привязан к xyz.co.

Вот что я сделал:

Я настроил свою конфигурацию Route 53 в соответствии с http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingDNS.html, поэтому я создал запись A, указывающую на IP-адрес, и запись псевдонима CNAME, чтобы разрешить www.xyz.co. Домен находится у godaddy, а серверы имен настроены на делегирование AWS.

Сам экземпляр находится в VPC по умолчанию. Я дважды проверил, что разрешение DNS и имена хостов DNS активны.

Я немного застрял в этом. Любая помощь будет высоко ценится!

Привет, Бруно


person Bruno Thiel    schedule 21.12.2014    source источник
comment
Что вы имеете в виду? Вы говорите, что адресная строка в браузере меняется с желаемого адреса на общий ... или что-то еще?   -  person Michael - sqlbot    schedule 21.12.2014
comment
если я ввожу xyz.co в поле адреса, он становится ec2-11-22-33-44.ap-southeast-2.compute.amazonaws.com, когда показывает содержимое страницы. То же самое применимо, если я ввожу IP-адрес напрямую. Я хочу, чтобы он оставался на xyz.co.   -  person Bruno Thiel    schedule 21.12.2014


Ответы (1)


То, что вы видите, на самом деле не связано с разрешением имен.

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

Тот факт, что переход к IP-адресу оказывает такое же влияние, подтверждает это утверждение.

То, что вы видите, никак не связано с DNS, Route 53 или даже EC2 или VPC. Ваш веб-сервер по какой-либо причине настроен на перенаправление входящих запросов с любым другим именем хоста ... на имя хоста, которое вы впоследствии видите в адресной строке (которое вам не нравится).

Вы должны заметить это в журнале вашего веб-сервера. Он будет выдавать 301 или 302 редирект при первоначальном запросе.

Вы также должны иметь возможность проверить это самостоятельно с помощью утилиты командной строки curl. Здесь сервер, доступ к которому осуществляется как «www.example.com», перенаправляет браузер на использование его предпочтительного адреса «example.com». (Имена хостов и адреса очищаются, но в остальном вывод не изменяется.)

$ curl -v www.example.com
* Rebuilt URL to: www.example.com/
* Hostname was NOT found in DNS cache
*   Trying 203.0.113.139...
* Connected to www.example.com (203.0.113.139) port 80 (#0)

Следующий блок вывода - это запрос, отправленный на веб-сервер.

> GET / HTTP/1.1
> User-Agent: curl/7.35.0
> Host: www.example.com
> Accept: */*
>

HTTP-ответ веб-сервера включает перенаправление.

< HTTP/1.1 301 Moved Permanently
< Content-length: 0
< Location: http://example.com/
< Connection: close
<
* Closing connection 0

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

Несмотря на то, что я набрал http://www.example.com в своем браузере, теперь он будет отображать только http://example.com/. То же самое произойдет, если я введу IP-адрес, если мой сервер был настроен на перенаправление всего на одно имя хоста, как ваш. В моем случае он специально настроен для чего-то другого.

Вышеупомянутое должно продемонстрировать, что на самом деле у вас нет проблемы с DNS, и объяснить механизм, который вызывает это (потому что вы можете найти что-то полезное, что намеренно нужно делать в будущем, как это делают мои веб-серверы - любой www. * запрос удаляется и переписывается без www).

Проблема заключается в том, что ваш веб-сервер сообщает браузеру использовать другое имя хоста. Как это исправить, будет зависеть от того, какой веб-сервер вы используете и почему он считает необходимым перенаправление.

person Michael - sqlbot    schedule 22.12.2014
comment
Вы были правы ... curl обнаруживает перенаправление на 302 темпа. Я использую многосайтовое изображение WordPress AMI с битнами. Я не уверен, почему это так настроено. - person Bruno Thiel; 23.12.2014