Нужно ли редактировать файл hosts в Windows для размещения виртуальных хостов Apache?

338
Alvaro Bataller

Я учусь размещать сайты на маленьком домашнем сервере. Я следовал некоторым учебникам, где они сказали, что вы должны отредактировать файл "hosts" (C: \ Windows \ System32 \ drivers \ etc \ hosts) и добавить следующее:

127.0.0.1 domain.com 

После того, как я зайду в свой «httpd-vhosts.conf» и введу что-то вроде этого:

<VirtualHost *:80> ServerName domain.com DocumentRoot C:/Apache24/Websites/domain.com </VirtualHost> 

Наконец, я бы пошел к Godaddy и указал бы domain.com на мой домашний IP.

Все отлично работает, но просто для того, чтобы провести тестирование, я решил удалить строки в папке «hosts», оставив ее пустой. Перезапустил мой сервис apache и сайты все еще доступны.

Так нужно ли модифицировать файл hosts?

Спасибо за помощь!

0
[DNS] (https://en.wikipedia.org/wiki/Domain_Name_System) (имя Doamin Sytem) имеет значение [TTL] (https://en.wikipedia.org/wiki/Time_to_live) (время жизни) который сразу подавит негативные эффекты, не играйте с этим. LotPings 5 лет назад 0

1 ответ на вопрос

0
Jaleks

Если у вас есть внешняя служба DNS (например, GoDaddy), настроенная на указание вашего локального IP-адреса для определенного доменного имени, которое вы хотите использовать, hostsфайл вам не нужен .

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

С настроенной внешней службой DNS любой компьютер, использующий эту внешнюю службу, может найти ваш IP с именем хоста.

Таким образом, вы можете сказать, что существует 3 уровня DNS: 1- DNS только на вашем компьютере (файл hosts) 2- DNS только в вашей локальной сети (локальный DNS-сервер или маршрутизатор с «DNS Host Mapping») 3-DNS-сервер Intenet, который может обновляться с использованием Godaddy, например Alvaro Bataller 5 лет назад 0
Это может быть даже больше уровней. Процитирую статью Википедии о DNS: «Каждый сервер направляет клиента к следующему серверу в цепочке, пока текущий сервер не сможет полностью разрешить запрос. Например, возможное разрешение www.example.com будет запрашивать глобальный корневой сервер, а затем сервер com и, наконец, сервер example.com. Файл локальных хостов всегда будет первым (просто попробуйте добавить запись «0.0.0.0 facebook.com» и после этого посетите этот средний домен ;-)). Jaleks 5 лет назад 0
Отлично, так что файл hosts будет полезен, если я захочу получить доступ к своему веб-сайту "domain.com", не выходя в Интернет и не возвращаясь в свою сеть? Добавив 127.0.0.1 domain.com, я бы направил запрос на сам веб-сервер, а не на маршрутизатор, затем на сервер DNS DNS, а затем обратно на маршрутизатор и, наконец, на сервер. Alvaro Bataller 5 лет назад 0
точно, вот так это работает Jaleks 5 лет назад 0