Все шаги по настройке и разрешению поддомена.localhost на 127.0.0.1?

я вдруг чувствую упрямство по поводу моего поддомена на localhost не работает. Мой /etc/hosts файл выглядит так:

127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost 
fe80::1%lo0 localhost

127.0.0.1   develop2win.de
127.0.0.1   develop2win.de

127.0.0.1   alomvar.localhost

помещение всех имен хостов для одного IP в одну строку также не работает:

127.0.0.1   localhost alomvar.localhost develop2win.de www.develop2win.de

я также перезапустил распознаватель DNS, подходящий для OS X 10.9 Mavericks со следующей командой:

dscacheutil -flushcache; sudo killall -HUP mDNSResponder

но выдавать nslookup alomvar.localhost на терминале дает следующее:

Server:     192.168.178.1
Address:    192.168.178.1#53

** server can't find alomvar.localhost: NXDOMAIN

это IP маршрутизатора в моем локальная сеть. Похоже, что файл localhost hosts в этом случае пропускается для разрешения. До начала процесса develop2win.de был успешно разрешен и указал на локальный виртуальный хост Apache. Но теперь даже это больше не работает, та же ошибка, что и выше (WTF?). Однако, глядя вверх равнина localhost работает нормально, все равно:

Server:     192.168.178.1
Address:    192.168.178.1#53

Name:   localhost
Address: 127.0.0.1

обновление 1: я тоже перезагрузился без изменений. Похоже, что DNS-запросы не разрешаются локально вообще, но отправляются на мой маршрутизатор вместо.

что мне не хватает? Кто-то еще пытался настроить поддомен для localhost в OS X Mavericks? Дело даже не в Apache, а в DNS.

здесь скриншот моей конфигурации DNS в Системных настройках, кстати. Так как у меня нет достаточной репутации, чтобы вставлять изображения, это ссылка на внешний сайт.

обновление 2: я проверял с host и ping команды в терминал, как указал dave_thompson_085. Для localhost все прекрасно работает:

$ host localhost
localhost has address 127.0.0.1

но для поддомена нет:

$ host alomvar.localhost
Host alomvar.localhost not found: 3(NXDOMAIN)

Ping localhost тоже работает нормально:

$ ping localhost
PING localhost (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.048 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.078 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.085 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.076 ms
^C
--- localhost ping statistics ---
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.048/0.072/0.085/0.014 ms

а теперь, раздражающе, так это работает и для поддомена:

$ ping alomvar.localhost
PING alomvar.localhost (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.039 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.042 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.075 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.091 ms
^C
--- alomvar.localhost ping statistics ---
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.039/0.062/0.091/0.022 ms

как я могу ping без проблем, но не решить поддомен? По-видимому, это должно работать так, когда я смотрю, как другие люди делали это в интернете. Я не трещина по поводу нетворкинга. Я, вероятно, сломал что-то еще, кроме того, что непосредственно необходимо для этого.

я тоже казнят digна localhost и поддомене. Выход довольно длинный, и я думаю, что этот вопрос уже достаточно загроможден. См.этот файл копать выход.

обновление 3: при отключении компьютера Mac от сети (отключение сетевого адаптера ethernet) digи host не удается найти localhost, слишком.

обновление 4: я узнал, что работает в браузерах, чтобы показать виртуальный хост Apache, слушая так называемый хост. Это не решение проблемы, а обстоятельство, с которым я могу жить и работать. Однако я по-прежнему заинтересован в решении этого вопроса. Если у кого-нибудь есть идеи, скажите мне.

9
задан Peter Thomas Horn
29.12.2022 17:28 Количество просмотров материала 2576
Распечатать страницу

1 ответ

dig,host и nslookup все обходят системный распознаватель имен и запрашивают DNS напрямую. Таким образом, они не увидят имен, определенных в /etc/hosts (если только они не и определенный в службе DNS), или любой mDNS (он же Bonjour) .локальные имена или записи компьютеров в службах каталогов или...

если вы хотите увидеть, что видит системный распознаватель, лучший инструмент dscacheutil. К сожалению, его синтаксис довольно неуклюж (dscacheutil -q host -a name alomvar.localhost), так это, как правило, быстрее в использовании что-то вроде ping, который использует распознаватель системных имен. Но если вы хотите получить полную информацию (например, разрешает ли имя несколько адресов),dscacheutil - это путь.

2
отвечен Gordon Davisson 2022-12-31 01:16

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх