Я использую Apache 2.2 на XP. Я хочу настроить Apache так, чтобы у меня были разные тестовые сайты (каждый из которых прослушивает другой порт), чтобы к ним могли получить доступ другие машины в моей внутренней (домашней сети).
Мне удалось настроить разные виртуальные хосты (все с использованием порта 80), затем я использовал файл хоста для предоставления таких имен серверов, как:
127.0.0.1 локальный хост 127.0.0.1 test.php.localhost 127.0.0.1 phpmyadmin.localhost
и т.д
Это отлично работает на моем локальном компьютере, так как я могу получить доступ http: //phpmyadmin.localhost/ (например, на моем локальном компьютере. Однако, когда я перехожу на другой компьютер, я не могу ввести http: //phpmyadmin.localhost/ Я могу только печатать http: // [server.ip.address] что в данном случае дает мне первый веб-сайт, указанный в моем файле httpd.conf.
У меня два (возможно, связанных) вопроса
Что мне нужно сделать, чтобы получить доступ
http://phpmyadmin.localhost/
с другой машины в локальной сети (это просто случай изменения файла хоста на каждой машине или это более сложно?)
localhost имеет свою запись в файле hosts каждого компьютера - он указывает на специальный IP-адрес обратной петли 127.0.0.1
, или локальный компьютер. Любая данная машина ищет локально (на себе), когда любой запрос 127.0.0.1
браузером, и поскольку вы указали все записи хостов на 127.0.0.1
вы не можете скопировать эту конфигурацию на другие машины, вы должны использовать общедоступный IP-адрес вашего хост-компьютера.
Вы должны либо разместить записи DNS в локальной сети, либо, что гораздо проще, изменить файл hosts каждой клиентской машины в C:\WINDOWS\system32\drivers\etc\hosts
192.168.1.72 phpmyadmin phpmyadmin.mymachine testing.somemachine
Это сделает все запросы к http://phpmyadmin/
прямо на IP-адрес 192.168.1.72
Как мне получить доступ к КОНКРЕТНОМУ веб-сайту (на моем локальном сервере) с одной из машин в моей сети вместо того, чтобы автоматически назначаться первому сайту, указанному в httpd.conf?
Убедитесь, что вы настроили файл hosts - если вы используете виртуальный хостинг на основе имени вам нужно будет попасть на сервер с соответствующим именем сервера (например, phpmyadmin выше), чтобы сервер мог искать этот сервер / псевдоним в конфигурации vhost и загружать соответствующие данные.