Домены

DNS и SSL без лишней терминологии

Что происходит между вводом домена в браузере и открытием защищённой страницы, где возникают задержки и ошибки.

DNS отвечает на вопрос, к какому серверу относится доменное имя. SSL-сертификат подтверждает, что сервер имеет право обслуживать это имя, и шифрует соединение браузера с сайтом. Одно не заменяет другое: корректная A-запись без сертификата приводит на сервер, но HTTPS показывает предупреждение.

## Что происходит при открытии адреса

Браузер запрашивает IP домена у DNS-резолвера. Получив адрес, он соединяется с сервером и передаёт имя сайта. На HTTPS-соединении сервер показывает сертификат, где это имя должно присутствовать. Затем веб-сервер выбирает каталог проекта и отдаёт HTML.

```text
домен → DNS → IP сервера → сертификат → файлы проекта
```

Поломка на каждом этапе выглядит по-разному. `ERR_NAME_NOT_RESOLVED` означает, что имя не нашлось в DNS. `CERT_COMMON_NAME_INVALID` появляется, когда сертификат выпущен для другого домена. Страница 404 от Deploya говорит, что запрос дошёл до сервера, но адрес не привязан к активному проекту.

## Почему изменения видны не сразу

DNS-ответы кешируются на срок TTL. После изменения A-записи один резолвер уже может видеть новый IP, а другой ещё отдаёт старый. Перезагрузка страницы не очищает кеш провайдера связи.

Сертификат выпускается после подтверждения DNS. Сервер не должен запрашивать его до того, как домен действительно указывает на Deploya: центр сертификации проверяет адрес снаружи. Поэтому статус SSL логично меняется после статуса DNS.

> Место для скриншота: последовательность статусов «DNS ожидается» → «DNS готов, SSL ожидает» → «SSL активен».

## Что проверяет Deploya

Кнопка проверки запрашивает публичные DNS-записи и сравнивает их с ожидаемыми. Автоматическая задача повторяет проверку доменов, которые ещё не готовы. После подтверждения конфигурация веб-сервера обновляется, сертификат выпускается и подключается без ручной загрузки файлов.

Смена поддомена проекта проходит похожий цикл, но системные зоны Deploya уже настроены wildcard-записью. DNS для нового системного адреса готов заранее; задержка обычно связана с обновлением конфигурации и сертификата на сервере.

Если HTTP открывается, а HTTPS нет, причина находится после DNS: проверяется наличие имени в сертификате и конфигурация виртуального хоста. Если не открывается даже HTTP, сначала проверяются A-запись и привязка домена к проекту.

Все статьи