Почему нельзя зайти на виртуальные хосты XAMPP из локальной сети

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

Основная причина этой проблемы — это то, что XAMPP по умолчанию настроен на работу только на локальной машине, а не в локальной сети. Это означает, что даже если вы настроили виртуальный хост и привязали его к определенному имени хоста и адресу, другие устройства в локальной сети не смогут получить доступ к нему. Это может быть особенно проблематично, если вам нужно проверить работу приложения на разных устройствах, таких как мобильные телефоны или планшеты.

К счастью, существует простое решение для этой проблемы. Вам нужно отредактировать файл hosts на вашей локальной машине, чтобы добавить запись для имени хоста и адреса вашего виртуального хоста. Это позволит вашей локальной сети распознавать имя хоста и адрес и, в результате, получать доступ к вашему веб-приложению. Для этого вам потребуется административные права на своей локальной машине.

Чтобы добавить запись в файл hosts, вы можете использовать программу блокнот или другой текстовый редактор. Файл hosts обычно находится в папке C:\Windows\System32\drivers\etc\ (для пользователей Windows) или /etc/hosts (для пользователей MacOS и Linux). Откройте файл в текстовом редакторе и добавьте строку в следующем формате: IP-адрес Имя_хоста. Например, если у вас есть виртуальный хост с именем «mywebsite.loc» и IP-адресом «192.168.0.100», строка будет выглядеть следующим образом: 192.168.0.100 mywebsite.loc. Сохраните файл после внесения изменений.

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