Содержание
DNS, редиректы, SSL и домены — те части интернета, которые, как минимум, полезно знать. Для владельца ИТ-проекта, маркетолога или проект-менеджера необходимо не только понимать эти термины, но и уметь базово их анализировать. Почему?
Во-первых, потому что если что-то не работает в сетевом стэке, то ваш сайт скорее всего не работает совсем. Поэтому, когда что-то ломается в области сетей, у вас нет времени начинать изучать предмет.
Во-вторых, эти элементы лежат в «серой» зоне ответственности многих разработчиков. Особенно, если вы сам платите за хостинг. Другими словами, вы можете попасть в ситуацию, когда разработчик «переводит стрелки» на хостинг и наоборот.
После прочтения этого материала и просмотра видео-ролика вы будете готовы к целому ряду неожиданностей и вооружены самыми лучшими инструментами для диагностики проблем вашего сайта. Будет интересно. Приступим?
DNS — система, на которой строится работа доменов, без которой для перехода на сайт вам бы пришлось набирать в адресной строке браузера странный набор цифр. В видео я подробно и с примерами объясняю, как это все работает.
Ниже я часто буду упоминать консольные команды. Если у вас Mac или Linux, то вам повезло — терминал у вас уже установлен. Если у вас Windows, то проще всего будет установить бесплатную программу Cmder.
Проверить whois домена можно онлайн-сервисом (например, https://www.nic.ru/whois/) или консольной командой:
whois domain.ru
Сервис whois позволяет узнать информацию о домене или IP, включая:
Проще всего для проверки DNS-записей воспользоваться онлайн-сервисом https://www.reg.ru/nettools/dig
Также удобны dig
и nslookup
— консольные утилиты, позволяющие определить DNS-записи домена
dig domain.ru any
Онлайн-сервис — https://ping.eu/ping/
ping
— консольная утилита, позволяющая определить, на какой IP адрес идет текущий компьютер по заданному домену. Рекомендую использовать именно утилиту, а не онлайн-сервис, так как данные на вашем компьютере часто будут отличаться от данных онлайн-сервиса.
ping domain.ru
DNS-записи кэшируются у разных интернет-провадйеров по-разному, поэтому после смены этих записей пользователи разных провайдеров могут какое-то время видеть разный сайт: кто-то будет видеть старый, кто-то новый. У нас в офисе интернет-провайдер, у которого медленно обновляется кэш DNS, поэтому для проверки стоит либо зайти на сайт через телефон (через сотовую связь, не используя Wi-Fi), либо воспользоваться сервисом Netrenderer, либо настроить использование сторонних DNS. Проще всего, использовать Netrenderer. В перспективе удобнее, прописать сторонние DNS на компьютере.
До сих пор мы учились только получать и анализировать сетевые данные. Но, если вы хоть немного связаны с веб-разработкой, вам придется иногда вставать у руля. Пусть даже только для вашего локального компьютера.
Файл hosts позволяет на вашем локальном компьютере «насильно» сопоставить домен и IP-адрес. Это нужно, например, для того, чтобы проверить, как работает сайт, до того, как на него будет переключен домен.
В Linux и MacOS этот файл расположен по адресу /etc/hosts. В Windows он расположен в C:\windows\system32\drivers\etc\hosts
Так как файл hosts
является системным, то вам понадобятся права администратора для изменения этого файла.
На Windows можно воспользоваться программой https://hostsfileeditor.com/.
Редиректы и DNS могут перенаправлять трафик, но разница между этими способами колоссальна.
Плюсы и минусы редиректов относительно DNS (в плане диагностики проблем на сайте)
Проверка редиректов очень важна для проверки настроек префиксов домена типа www и http/https.
То есть, у каждого домена обычно есть 4 варианта написания:
И 3 из этих 4 вариантов обязательно должны ссылаться на один из них, то есть на главный. Главный вариант определяет заказчик, но обычно это https://domain.ru.
Еще одно важное замечание — не проверяйте редиректы через браузер. Браузер кэширует редиректы, поэтому ему нельзя доверять. Даже в режиме инкогнито кэш редиректов не всегда сразу сбрасывается. Кэш этот, однако, можно сбросить (об этом ниже), но постоянно сбрасывать его довольно муторно. Поэтому нужно знать другие способы проверки редиректов.
Для проверки можно использовать онлайн-сервис http://www.redirect-checker.org
Мой любимый способ проверки редиректов — как ни странно, терминал (консоль):
curl -I -L https://domain.ru
На Windows нажать ctrl+H, затем «очистить историю», оставить включенной (отжатой) только галочку напротив «Изображения и другие файлы, сохраненные в кэше». Затем нажать «удалить данные».
Типы сертификатов
В видео я подробно рассказываю:
Для диагности SSL на вашем сайте вы также можете использовать онлайн-сервис https://www.ssllabs.com/ssltest/
Учтите, данные о сертификате, как и HTTP-редиректы, сильно кэшируются браузером. Сбрасываются также, как кэш редиректов (смотрите выше).
Мы обычно используем сервис 2domains.ru (партнер reg.ru).
Цены на свободные домены варьируются от 500 рублей до нескольких тысяч рублей и зависят как от доменной зоны (.ru, .com и др.), так и от регистратора. RU относительно дешевы. Модные IO стоят около $100.
Кириллический домен купить можно, но только как дополнение к латинскому. Таким образом, кириллический домен будет просто редиректить на латинский (HTTP-редирект).
Для регистрации домена будущий владелец домена (наш клиент) должен предоставить свои данные. Для этого у нас есть специальные анкеты для физлиц и для юрлиц.
Мы просим наших клиентов зарегистрироваться в 2domains.ru и предоставить нам email или логин аккаунта. После этого мы передаем домен с одного аккаунта регистратора на другой.
Нужно понимать, что управление доменом и владение им — вещи не связанные. Управление — это доступ в ЛК регистратора для изменения NS-записей домена (смотри пункт 5). Владение — это ваше имя в параметрах домена (смотри пункт 4).