Configuración de Apache2 para servidor virtual basado en múltiples nombres en 1 IP

Configuración de Apache2 para servidor virtual basado en múltiples nombres en 1 IP

He intentado configurar servidores virtuales para mis sitios web sin suerte. Estoy ejecutando Debian 2.6.32 en un VPS. He configurado los servidores virtuales con muchas configuraciones y lo he dejado relativamente sencillo para realizar pruebas (solo habilité epicbackroads.com). Aquí están mis tres anfitriones virtuales:

<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

y aquí está mi archivo /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

y /etc/resolv.conf:

search epicbackroads.com
nameserver 8.8.8.8
nameserver 8.8.4.4

así como un control de rizos:

# 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>

Sin embargo, el navegador continúa arrojando el error "No se puede encontrar el servidor". ¿Qué más debería investigar?

ACTUALIZACIÓN: Además, ejecuté telnet y recibí esto:

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.

Respuesta1

La configuración de Apache que publicó está incompleta o no es válida por completo.

El segundo host virtual tiene un error de sintaxis (falta '<')

VirtualHost *:80>

y nunca se cierra. Desaparecido:

</VirtualHost>

También te faltan ServerNameen cada Host Virtual. https://httpd.apache.org/docs/current/mod/core.html#servername

Apache no sabrá qué host virtual servir y utilizará de forma predeterminada el primero en la configuración.

Aparte de eso, el problema con epicbackroads.com parece ser su configuración de DNS. epicbackroads.com no se resuelve en ninguna dirección IP.

Su servidor puede resolver el dominio porque lo configuró manualmente en el archivo /etc/hosts pero su PC no puede resolver este dominio, por lo que no cargará nada.

información relacionada