Meus VirtualHosts se sobrepõem e meu NameVirtualHost não tem VirtualHosts

4

Eu acho que o título da pergunta praticamente diz o problema. Estou recebendo esses dois erros quando reinicio o httpd:

[Wed Jun 22 13:39:23 2011] [warn] _default_ VirtualHost overlap on port 80, the first has precedence e [Wed Jun 22 13:39:23 2011] [warn] NameVirtualHost *:80 has no VirtualHosts

Estou incluindo um arquivo que tem isso como a única linha:

NameVirtualHost *:80

E ambos os VirtualHosts são quase idênticos a isto:

<VirtualHost *:80>
        ServerAdmin webmaster@<other-name>.com

        DocumentRoot /var/www
        ServerName www.<name>.com
        ServerAlias <name>.com *.<name>.com
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog /var/log/httpd/error_log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/httpd/access_log combined

</VirtualHost>
Claramente, estou sentindo falta de algo óbvio que afeta esse resultado, mas não sei o quê. (Obviamente, ambos os sites estão direcionando para a mesma página)

(Não tenho certeza se isso é importante, mas estou usando o CentOS).

SOLUÇÃO

Totalmente apreciada a solução de Mike Diehn abaixo, mas é uma solução ligeiramente diferente do que ele sugeriu.

eu corri:

/usr/sbin/httpd -t -D DUMP_VHOSTS

E eu tenho

[Wed Jun 22 14:23:20 2011] [warn] _default_ VirtualHost overlap on port 80, the first has precedence
[Wed Jun 22 14:23:20 2011] [warn] NameVirtualHost *:80 has no VirtualHosts
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
_default_:443          <name-one>.com (/etc/httpd/conf.d/ssl.conf:81)
*:80                   www.<name-one>.com (/etc/httpd/conf/sites-enabled/100-default:1)
*:80                   www.<name-two>.info (/etc/httpd/conf/sites-enabled/200-info:1)
*:*                    www.<!!!!!!!!!!!!!!>.com (/etc/httpd/conf/sites-enabled/6-<bad>.com:1)
Syntax OK

Observe o !!!!!!!!!!! ? Isso estava lá porque eu acidentalmente copiei de outro lugar. Ele engoliu tudo e não deu certo.

    
por cwallenpoole 22.06.2011 / 22:52

1 resposta

5

Você tem certeza de que sua diretiva NameVirtualHost está sendo "vista" pelo Apache? Esse é um erro comum que vemos

Ei, tente este comando:

/ usr / sbin / apache2ctl -t -D DUMP_VHOSTS

Veja o que vejo em um servidor que está funcionando corretamente para mim:

VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:*                    is a NameVirtualHost
         default server loghost.example.com (/etc/apache2/vhosts.d/10_loghost.example.com.conf:4)
         port * namevhost loghost.example.com (/etc/apache2/vhosts.d/10_loghost.example.com.conf:4)
         port * namevhost netflow.example.com (/etc/apache2/vhosts.d/20_netflow.fluent.com.conf:4)
         port * namevhost licensewatch.example.com (/etc/apache2/vhosts.d/40_licensewatch.example.com.conf:8)
Syntax OK
    
por 22.06.2011 / 23:20