У меня есть жесткий сервер ubuntu, используемый в качестве веб-сервера с Apache 2.2. Я пытаюсь настроить его с помощью именованных виртуальных хостов, а в моем файле /etc/apache2/apache2.conf у меня есть следующие строки:
NameVirtualHost *
Include /etc/apache2/sites-enabled/
У меня есть два файла в разрешенных сайтах. Один из них содержит:
<VirtualHost *>
ServerAdmin webmaster@met.no
ServerName arcticdata.met.no
DocumentRoot /metno/metamod/arcticdata/htdocs
...
</VirtualHost>
Другое похоже, но с другим ServerName и DocumentRoot.
Если я запустил apachectl configtest, я получаю следующее предупреждение:
[ f3]Но в любом случае кажется, что механизм виртуального хоста работает, так как я попадаю в файл index.html, помещенный в DocumentRoot в обоих случаях.
Но я также использую перенаправление на процесс катализатора на тот же сервер, и эти переадресации, похоже, не работают:
ProxyPass /metamod/ http://127.0.0.1:3011/
ProxyPassReverse /metamod/ http://127.0.0.1:3011/
Hovever. Если я введу IP-адрес и номер порта в -directive (вместо *), эти перенаправления внезапно начнут работать. Но тогда у меня другая проблема. Теперь запущенный apachectl configtest дает следующий результат:
[warn] VirtualHost 157.249.32.169:80 overlaps with VirtualHost 157.249.32.169:80, the first has precedence, perhaps you need a NameVirtualHost directive
[warn] NameVirtualHost *:0 has no VirtualHosts
и работает только первый виртуальный хост.
Я также запускаю аналогичную настройку в ясном ящике, и это работает нормально , Существуют ли изменения в настройке Apache 2.2 между hardy и lucid? Яркий бокс имеет Apache 2.2.8, а ясная панель имеет Apache 2.2.14.
Любые предложения оценены.
Egil
Исправьте конфигурацию apache, чтобы ясные порты aprobiate были ясными.
NameVirtualHost *:80
NameVirtualHost *:443
и
<VirtualHost *:80>
</VirtalHost>