Skip to content
HTTP и сайты
NEXIP / EDITORIAL STORY

Почему сайт работает по IP, но не по домену

Одна из самых полезных подсказок при диагностике: сайт открывается по IP, но не открывается по домену. На первый взгляд кажется очевидным: «значит виноват DNS». Очень часто так и есть, но не всегда. Современный веб-сервер может…

NexIP editorialNexIP Published Reading time3 min Start reading
NEXIP JOURNAL Cover image
← Journal Почему сайт работает по IP, но не по домену

Одна из самых полезных подсказок при диагностике: сайт открывается по IP, но не открывается по домену.

На первый взгляд кажется очевидным: «значит виноват DNS». Очень часто так и есть, но не всегда. Современный веб-сервер может обслуживать много доменов на одном IP, а HTTPS вообще требует учитывать имя сайта.

Что означает «по IP работает»

Например:

http://203.0.113.25

возвращает страницу, а:

https://example.com

не открывается.

Первое — проверьте DNS

dig +short example.com A
dig +short example.com AAAA

Сравните результат с настоящим IP сервера.

Домен указывает на старый IP

Самая очевидная причина после миграции.

A правильная, AAAA неправильная

Очень частый сюрприз.

A    → новый сервер
AAAA → старый сервер

Часть клиентов выбирает IPv6 и попадает не туда.

Старый DNS-кеш

Авторитетный сервер уже знает новый IP, а recursive resolver ещё хранит старое значение согласно TTL.

Но есть ещё virtual host

Один nginx может обслуживать десятки сайтов.

Когда браузер обращается к домену, сервер получает hostname и выбирает нужную конфигурацию.

По IP может открываться вообще другой сайт

Например default server nginx.

Поэтому факт, что «на IP что-то открылось», ещё не доказывает правильную настройку домена.

Host header

HTTP-запрос содержит имя хоста.

Host: example.com

Без правильного Host сервер может выбрать другой virtual host.

HTTPS ещё интереснее

TLS-сертификат выдаётся для доменного имени, а не просто для произвольного IP.

Открытие:

https://203.0.113.25

может дать ошибку сертификата, хотя сайт по домену настроен правильно.

SNI

При TLS клиент сообщает, к какому hostname хочет подключиться. Это помогает серверу выбрать нужный сертификат.

Лучшая команда для проверки конкретного сервера

curl --resolve example.com:443:203.0.113.25 \
https://example.com/

Здесь мы говорим curl: используй этот IP, но обращайся как к настоящему домену.

Почему это полезно перед сменой DNS

Можно проверить новый сервер ещё до публичного переключения.

www и корневой домен

Проверьте оба:

example.com
www.example.com

У них могут быть разные DNS-записи и разные virtual host.

Firewall

Редко, но сервер может фильтровать трафик по frontend, proxy или другим условиям. Сам факт доступности IP не гарантирует работу нужной виртуальной конфигурации.

CDN

Если домен должен указывать на CDN, прямой IP origin вообще не обязан давать тот же результат.

Правильный порядок

  1. Проверить A.
  2. Проверить AAAA.
  3. Проверить NS.
  4. Сравнить authoritative и recursive DNS.
  5. Проверить virtual host.
  6. Проверить TLS/SNI.
  7. Проверить через curl --resolve.

Как NexIP помогает

DNS Lookup и SSL/HTTP-проверки позволяют увидеть, на каком шаге доменное имя начинает вести себя иначе, чем прямой адрес.

FAQ

Если IP работает, сервер точно исправен?

Нет. Вы доказали только доступность какого-то сервиса на этом IP.

Можно использовать IP вместо домена постоянно?

Для обычного сайта это плохая замена: ломаются HTTPS, virtual hosts, cookies, ссылки и другие механизмы.

Что проверять первым?

A и AAAA.

По теме: Почему сайт работает через мобильный интернет, но не через Wi-Fi.

Thank you for reading

More practical guides are waiting in the NexIP journal.

NEXIP / DIAGNOSTICS

Verify what matters

Check a website, domain or network settings with real NexIP diagnostics.

Launch diagnostics

Continue reading

Related materials

HTTP и сайты

Нейросеть уже покупает за вас: как искусственный интеллект получает доступ к нашим деньгам

Нейросети перестают быть обычными советчиками и начинают покупать товары от имени людей. Shopify уже открыла доступ ИИ-агентам к миллиардам товаров, а Visa исследует платежи между программами. Но кто ответит, если алгоритм потратит деньги неправильно? Разбираемся, как меняется интернет-торговля и почему привычные магазины могут столкнуться с совершенно новым типом покупателей.

Read
HTTP и сайты

HTTP-коды ответа: что означают 200, 301, 404, 500 и другие

Когда браузер открывает страницу, сервер отвечает не только HTML-кодом. Вместе с ответом он отправляет числовой HTTP-статус: 200, 301, 404, 500 и так далее. Эти три цифры часто позволяют понять проблему быстрее, чем длинное сообщение…

Read
Back to knowledge base