Назад | Перейти на главную страницу

Apache: VirtualHost *: 80 - смешивание * портов и не * портов с адресом NameVirtualHost не поддерживается

Когда я добавляю следующую строку в /etc/apache2/apache2.conf, После перезапуска apache я получаю сообщение об ошибке:

Include
/usr/share/doc/apache2.2-common/examples/apache2/extra/httpd-vhosts.conf

[Пн, 14 июня, 12:16:47 2010] [ошибка] VirtualHost *: 80 - смешивание * портов и не- * портов с адресом NameVirtualHost не поддерживается, продолжение с неопределенными результатами [Пн, 14 июня, 12:16:47 2010 ] [предупреждать] NameVirtualHost *: 80 не имеет VirtualHosts

Это мой файл httpd-vhosts.conf:

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.

<VirtualHost *:80>
   ServerName tirengarfio.com
   DocumentRoot /var/www/rs3

   <Directory /var/www/rs3>
      AllowOverride All
      Options MultiViews Indexes SymLinksIfOwnerMatch
      Allow from All
   </Directory>

   Alias /sf /var/www/rs3/lib/vendor/symfony/data/web/sf
   <Directory "/var/www/rs3/lib/vendor/symfony/data/web/sf">
    AllowOverride All
    Allow from All
   </Directory>
</VirtualHost>

Есть идеи, что вызывает это?

В вашем http.conf есть еще одна запись NameVirtualHost, которая вызывает эту проблему. Найдите запись вроде NameVirtualHost *:* где-то, и удаление этого должно устранить эту ошибку.

Кроме того, в качестве побочного примечания, вероятно, не рекомендуется включать httpd-vhosts.conf непосредственно из документации примера, поскольку в зависимости от разрешений это может быть не особенно безопасно. Это также не то, чего другие люди ожидали бы, хотя, если вы единственный, кто управляет сервером, это становится меньшей проблемой.

Вероятно, существует другой VirtualHost, который мешает тому, который вы пытаетесь определить. Он может быть определен в файлах "Доступны сайты", "Доступны сайты" или в apache2.conf. Определение VHost должно выглядеть так

NameVirtualHost *:80 
NameVirtualHost *:81

<VirtualHost *:80>
# ...
</VirtualHost>

<VirtualHost *:81>
# ...
</VirtualHost>

Лучше скопировать файл конфигурации в каталог / etc. В любом случае, найдите (см. Ниже), есть ли другая директива virtualhost в любых файлах конфигурации apache.

grep -lir виртуальный хост / и т. д. / apache2

(Я думаю, все файлы конфигурации apache находятся в каталоге / etc / apache2)