Chrome на OS X не уважает etc / hosts и / или httpd-vhosts.conf localhost поддомены
Это ситуация, которая очень беспокоила меня в последние несколько дней. у меня есть много поддоменов dev environment, настроенных в моем файле etc/hosts, как это...
127.0.0.1 localhost
127.0.0.1 sub.localhost
127.0.0.1 another.localhost
127.0.0.1 andanother.localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
И затем указан в моих приложениях / MAMP / conf / apache / extra / httpd-vhosts.файл conf, вот так...
NameVirtualHost *:80
NameVirtualHost sub.localhost:80
NameVirtualHost another.localhost:80
NameVirtualHost andanother.localhost:80
<VirtualHost *:80>
DocumentRoot "/Users/johndoe/websites"
ServerName localhost
</VirtualHost>
<VirtualHost sub.localhost:80>
DocumentRoot "/Users/johndoe/websites/sub"
ServerName sub.localhost
</VirtualHost>
<VirtualHost another.localhost:80>
DocumentRoot "/Users/johndoe/websites/another"
ServerName another.localhost
</VirtualHost>
<VirtualHost andanother.localhost:80>
DocumentRoot "/Users/johndoe/websites/andanother"
ServerName andanother.localhost
</VirtualHost>
И совсем недавно они все перестали работать в Chrome (Firefox и Safari работали просто отлично). я начал получать 404 ошибки для всех моих поддоменов localhost.
- редактирование / изменение настроек в etc / hosts не работал
- редактирование / изменение настроек в моем httpd-vhosts.файл conf не работал
.
2 ответа:
После многих исследований (и проб и ошибок) я понял, что это была проблема DNS. раньше Мои настройки DNS в Системных настройках > сеть > дополнительно... DNS-серверы выглядели следующим образом...
8.8.8.8 8.8.4.4 xxx.xxx.xxx.x xxx.xxx.xxx.x
Это DNS-серверы Google в первых 2 слотах и x, представляющие адреса DNS-серверов моего провайдера. после некоторого поиска некоторые люди рекомендовали сначала добавить IP-адрес моей локальной сети, чтобы заставить что-либо в моей системе сначала посмотреть локально, прежде чем выходить на улицу DNS, поэтому я добавил адрес моего сетевого маршрутизатора выше остальных...
И это тоже не совсем сработало - или сработало - но не продлилось долго (честно говоря, сейчас не помню), но то, что я попытался сделать дальше, действительно сработало. я добавил адрес localhost (home) моей машины над адресом локальной сети, Вот так...10.0.1.1
127.0.0.1 10.0.1.1 8.8.8.8 8.8.4.4 xxx.xxx.xxx.x xxx.xxx.xxx.x
.
И теперь Google Chrome успешно "находит" все мои поддомены localhost.
Я очень надеюсь, что все это полезно для других.