
Я пытаюсь настроить локальный поддомен, и пока мне это частично удалось. Я настроил локальный домен - gob.local - и могу получить доступ к gob.local как с моего сервера, так и с других компьютеров в моей сети. Я пытаюсь настроить coupon.gob.local, но мне это не удалось.
Вот как выглядит мой /etc/hosts:
127.0.0.1 gob gob.local coupon.gob.local localhost
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
У меня также настроен VirtualHost для coupon.gob.local. Если я перехожу на coupon.gob.local в браузере на моем сервере, он работает нормально. Если я перехожу на тот же URL на другом компьютере в моей сети, он не работает. Опять же, gob.local работает везде, поэтому я не понимаю, что такого особенного в coupon.gob.local, что он не работает.
Спасибо, Джейсон.
решение1
Файл /etc/hosts не будет иметь значения для других компьютеров в сети, если только вы не используете этот сервер в качестве DNS для сети.
Если вы можете перейти на gob.local на других компьютерах в сети и заставить его поднять нужный сервер, это потому, что у них либо есть запись в файле hosts, либо они используют внутренний DNS, в котором есть запись для него. Если это так, просто найдите этот DNS и сделайте дополнительную запись для coupon.gob.local.
решение2
Домен .local является специальным и разрешается mDNS, реализованным Avahi (в частности, пакетом libnss-mdns).
Поскольку ваше имя хоста — gob, Avahi сообщает другим машинам по той же ссылке, что gob.local — ваш ip. Это не работает для другого случайного имени.
Вы можете попросить avahi опубликовать coupon.gob.local, добавив его локальный IP-адрес в /etc/avahi/hosts. 127.0.0.1 — локальный для машины, но вы можете получить более публичный IP-адрес из getent hosts gob.local
. Альтернативой является настройка DNS-сервера. dnsmasq — это тот, который хорошо масштабируется.
решение3
Моим решением была настройка DNS-сервера.