Для чего нужен файл hosts?

Что это, и зачем оно мне может понадобиться?

Hosts — файл, из которого операционная система вычитывает IP адреса для доменов прежде, чем спросить их у DNS.

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

Это может быть полезно или даже необходимо в разных ситуациях:

  • DNS-сервера вашего провайдера ещё не получили обновлённую информацию о сменившемся IP-адресе вашего сайта
  • Вы тестируете настройки сервера, и ещё не прописывали настроек домена, чтобы на ненастроенный сервер не попали посторонние, или поисковики не проиндексировали сайт раньше, чем всё будет готово
  • Вы разрабатываете сайты локально
  • Нужно заблокировать доступ к нежелательному сайту на подконтрольном вам компьютере
  • Захотелось подколоть товарища (плохая идея, это будет на вашей совести)
  • Много других причин

Где расположен файл hosts?

В зависимости от операционной системы, hosts-файл может находиться в разных папках.

У Windows:

на мистемном диске (для примера, у большинства это диск «C»):

C:\Windows\System32\drivers\etc\hosts

Большинство Linux, Mac OS X:

Этот файл будет находиться в

/etc/hosts

Содержимое файла hosts

В хостс-файле все данные хранятся в виде строк, где сначала идёт IP-адрес, а после него — один или несколько доменов, которые будут на него резолвиться. Разделяются между собой они (как IP с доменами, так и домены между собой) пробелами или табуляцией.

Ещё в этом файле можно комментировать строки — достаточно вставить решёточку/диез: #

Всё, что будет идти после решёточки, и до конца строки — будет проигнорировано.

Пример, который будет в большинстве файлов hosts по умолчанию:

127.0.0.1 localhost

Это означает, что если вы в браузере наберёте localhost/ — именно так, со слешем в конце, то запрос на полуение страницы уйдёт на IP 127.0.0.1, то есть на ваш же компьютер.

Варианты записи нескольких значений

Вы можете добавлять новые домены к уже существующему IP в ту же строку:

127.0.0.1 localhost test.local google.com

или с новой строки:

127.0.0.1 localhost

127.0.0.1 test.local

127.0.0.1 google.com

Оба варианта записи будут работать одинаково.

Если вы указали несколько строк, и в них будут повторяться домены, то в силу вступит правило из самого последнего упоминяния домена:

127.0.0.1 site.com

192.168.0.1 site.com

В итоге, site.com будет пытаться загружаться с IP 192.168.0.1


Если у вас есть вопросы по хост-файлу, или вам кажется, что я что-то не то тут написал — оставьте отзыв в комментариях, пожалуйста.

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.