Я боролся за то, чтобы конфигурация vhost работала на внутреннем сервере разработки на работе. Я нашел другие конфигурации виртуальных хостов в доступном для сайта каталоге. По какой-то причине я не понимаю, почему мой новый виртуальный хост не отвечает ни на какие запросы. Все, что я получаю, - это заявление 404. Это не общедоступный сервер, поэтому я не уверен, связано ли это с этим. Также, если я намеренно добавляю синтаксическую ошибку в свою конфигурацию ... apache кричит на меня, поэтому я знаю, что он действительно загружается. Я несколько раз перезапускал сервер apache. Я не знаю, связано ли это с именем сервера. Я просто хочу ввести 192.168.254.35/rackapp, и apache поместит меня в выбранный мной DocumentRoot. В настоящее время я могу использовать 192.168..254.35 / rack_example / public.
Это то, что я пытаюсь загрузить
<VirtualHost *>
ServerName rackapp
ServerAdmin atomphson@abc.com
DocumentRoot /var/www/rack_example/
</VirtualHost>
Этот конфиг работает без проблем
<VirtualHost *>
ServerName collab
ServerAdmin ason@abc.com
DocumentRoot /var/www/collab/
ErrorLog /var/log/apache2/colab-error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/collab-access.log combined
</VirtualHost>
Apache использует имя хоста, которое вы вводите в браузере, для выбора правильного виртуального хоста. Если вы используете IP-адрес, он выберет первый доступный виртуальный хост.
Чтобы проверить свои виртуальные хосты, вы должны обращаться к ним по имени. Для этого вы можете отредактировать файл hosts /etc/hosts
и добавьте эти две строки:
192.168.254.35 rackapp
192.168.254.35 collab
%SystemRoot%\system32\drivers\etc\hosts
для систем Windows.
Тогда вы сможете получить доступ http://rackapp/
или http://collab/
и протестируйте свою конфигурацию Apache.
Вы также можете немного поиграть и напрямую отправить HTTP-заголовок на свой веб-сервер:
$ echo -e "GET / HTTP/1.1\r\nHost: rackapp\r\n\r\n" | nc 192.168.254.35 80
Вы путаете здесь имя сервера и URL.
Если ты хочешь иметь 192.168.25.35/rackapp
быть URL-адресом для сервера, тогда имя сервера VirtualHost должно быть 192.168.25.35
вместо того rackapp
. С имеющейся у вас настройкой вам необходимо подключиться к серверу, используя http://rackapp
вместо этого, и это даст вам корень документа, который вы настроили для виртуального хоста.
Если вы пытаетесь подключиться к http://rackapp
дает вам "Сервер не найден", тогда вам нужно отредактировать файл / etc / hosts, чтобы он содержал строку
19.168.25.35 rackapp