Configuração Apache2 para servidor virtual baseado em vários nomes em 1 IP

Configuração Apache2 para servidor virtual baseado em vários nomes em 1 IP

Tenho tentado configurar servidores virtuais para meus sites sem sorte. Estou executando o Debian 2.6.32 em um VPS. Configurei os servidores virtuais com muitas configurações e deixei relativamente simples para teste (habilitei apenas epicbackroads.com). Aqui estão meus três hosts virtuais:

<VirtualHost *:80>
DocumentRoot "/srv/www/epicbackroads.com/public_html"
ServerName epicbackroads.com
<Directory "/srv/www/epicbackroads.com/public_html">
allow from all
Options +Indexes
</Directory>
</VirtualHost>

<VirtualHost *:80>
ServerAdmin [email protected]
    ServerName johnpwarren.com
DocumentRoot /srv/www/domain2.com/public_html
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /srv/www/domain2.com/public_html/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

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

CustomLog ${APACHE_LOG_DIR}/access.log combined

e aqui está meu arquivo /etc/hosts:

fe00::0     ip6-localnet
ff00::0     ip6-mcastprefix
ff02::1     ip6-allnodes
ff02::2     ip6-allrouters

127.0.0.1 localhost.localdomain localhost
# Auto-generated hostname. Please do not remove this comment.
208.84.135.70 serv1.epicbackroads.com  serv1
208.84.135.70 epicbackroads.com epicbackroads
208.84.135.70 johnpwarren.com   johnpwarren
208.84.135.70 voip.johnpwarren.com voip.johnpwarren
::1     localhost ip6-localhost ip6-loopback

e /etc/resolv.conf:

search epicbackroads.com
nameserver 8.8.8.8
nameserver 8.8.4.4

bem como uma verificação de curvatura:

# curl -I epicbackroads.com
HTTP/1.1 200 OK
Date: Mon, 27 May 2013 09:16:40 GMT
Server: Apache/2.2.16 (Debian)
Last-Modified: Mon, 27 May 2013 05:05:00 GMT
ETag: "32237e0-4f-4ddac173588f2"
Accept-Ranges: bytes
Content-Length: 79
Vary: Accept-Encoding
Content-Type: text/html
X-Pad: avoid browser bug
</VirtualHost>

No entanto, o navegador continua apresentando um erro "O servidor não pode ser encontrado". O que mais devo investigar?

ATUALIZAÇÃO: Além disso, executei o telnet e recebi isto:

telnet 208.84.135.70 80
Trying 208.84.135.70...
Connected to 208.84.135.70.
Escape character is '^]'.
Connection closed by foreign host.

Responder1

A configuração do Apache que você postou está incompleta ou totalmente inválida.

O segundo host virtual tem um erro de sintaxe (falta '<')

VirtualHost *:80>

e nunca fecha. Ausente:

</VirtualHost>

Além disso, você está faltando ServerNameem cada Host Virtual. https://httpd.apache.org/docs/current/mod/core.html#servername

O Apache não saberá qual Host Virtual servir e usará como padrão o primeiro na configuração.

Além disso, o problema com epicbackroads.com parece ser a configuração do DNS. epicbackroads.com não resolve nenhum endereço IP.

Seu servidor pode resolver o domínio porque você o configurou manualmente no arquivo /etc/hosts, mas seu PC não pode resolver este domínio, portanto não carregará nada.

informação relacionada