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

Что это, и зачем оно мне может понадобиться?
Hosts — файл, из которого операционная система вычитывает IP адреса для доменов прежде, чем спросить их у DNS.
Вы можете вручную прописать соответствие IP-адреса любому домену в hosts-файле своего компьютера, и тогда браузер будет пытаться открыть такие домены с указанных адресов.
Это может быть полезно или даже необходимо в разных ситуациях:
DNS-сервера вашего провайдера ещё не получили обновлённую информацию о сменившемся IP-адресе вашего сайта
Вы тестируете настройки сервера, и ещё не прописывали настроек домена, чтобы на ненастроенный сервер не попали посторонние, или поисковики не проиндексировали сайт раньше, чем всё будет готово
Вы разрабатываете сайты локально
Нужно заблокировать доступ к нежелательному сайту на подконтрольном вам компьютере
Захотелось подколоть товарища (плохая идея, это будет на вашей совести)
Много других причин
Где расположен файл hosts?
В зависимости от операционной системы, hosts-файл может находиться в разных папках.
У Windows:
на мистемном диске (для примера, у большинства это диск «C»):
C:WindowsSystem32driversetchosts
Большинство 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
Если у вас есть вопросы по хост-файлу, или вам кажется, что я что-то не то тут написал — оставьте отзыв в комментариях, пожалуйста.
Сообщение Для чего нужен файл hosts? появились сначала на Апач.
Источник: БЛОГ АПАЧА о ДЛЕ