Я разрабатываю несколько веб-сайтов локально, каждый из которых имеет собственное псевдодоменное имя и свой Apache VirtualHost:
Я хотел бы сделать эти веб-сайты доступными для любого компьютера в моей локальной сети, что позволило бы мне протестировать свой веб-сайт на мобильных устройствах (iOS).
Есть ли способ «опубликовать» такие имена, как mywebsite.localhost или mywebsite.local, в моей локальной сети, чтобы эти имена разрешались в IP-адрес моего компьютера для любого компьютера в сети?
Я не думаю, что смогу каким-либо образом настроить маршрутизатор моего интернет-провайдера на работу в качестве DNS-сервера.
Во время исследования я читал о mDNS и Bonjour, но не могу найти, являются ли они тем, что я ищу, и тем более, как заставить это работать.
Любая помощь приветствуется!
.localhost
это зарезервированный TLD поэтому вы захотите изменить это, чтобы не столкнуться с проблемами.
Один из способов сделать это - запустить DNS-сервер или сервер пересылки, например dnsmasq
, убедитесь, что все клиенты используют его, и распространите зоны с нужными вам сопоставлениями. Это добавляет довольно много накладных расходов и может быть проблематичным, если он настроен неправильно.
Предполагая, что вы можете контролировать доменные имена приложений, быстрый и простой вариант xip.io без необходимости настройки.
например ваш сервер 192.168.0.23
указать клиенту в той же сетевой подсети на http://192.168.0.23.xip.io/
и он должен работать.
Вы настраиваете DNS-сервер и указываете на него своим клиентам. DNS-сервер не обязательно должен быть маршрутизатором вашего интернет-провайдера. Ваш DNS-сервер должен отвечать на все запросы, для которых он является авторитетным, а затем перенаправлять все остальные запросы на маршрутизатор, предпочтительно кэшируя несколько записей по пути.
Либо так, либо придумайте способ распространения записей файла hosts, но с этим очень сложно справиться.