El host virtual Apache2 no funciona

El host virtual Apache2 no funciona

Utilizo Debian 7 y instalé un host virtual con la dirección sub.domain.com siguiendo este tutorial:http://www.debian-administration.org/articles/412

Lo habilité, reinicié la PC pero aún se abre el subdominio /var/www

Aquí está el contenido del archivo llamado "sub.domain.com", ubicado en /etc/apache2/sites-available/:

<VirtualHost *>
    ServerName sub.domain.com
    DocumentRoot /usr/share/destfolder
    ServerAdmin [email protected]
    ErrorLog /var/log/apache2/sub.domain.com-error_log
    CustomLog /var/log/apache2/sub.domain.com-access_log common
</VirtualHost>

Por cierto, cuando recargo la configuración de Apache, aparece: NameVirtualHost *:80 has no VirtualHosts

¿Alguna sugerencia?

Respuesta1

Vincular solo el tutorial no es suficiente información; mejor si publica su archivo de configuración. En lo que terminas /var/wwwal abrir tu dirección de host virtual puede tener más causas.

El archivo de configuración de Apache está construido de manera que, sin contexto, las directivas se aplican globalmente. De lo contrario, se aplican sólo dentro del contexto. Los hosts virtuales se realizan de la forma en que el defaulthost *virtual está configurado de forma predeterminada. Si no existe ninguno, el primer host virtual encontrado al analizar la configuración se toma como predeterminado.

Ahora, finalmente, a la posible respuesta:

1) En su servidor virtual no ha configurado la directiva DocumentRoot y el DocumentRoot global (presumiblemente predeterminado) apunta al archivo /var/www.

2) Su servidor virtual no funciona como esperaba. Esto sucede a veces cuando cometes un error al nombrar. Habilite LogLevel debugel registro de depuración y observe lo que sucede y a qué host virtual se llama cuando abre la dirección deseada. Los archivos de registro en Debian se encuentran en (no estoy 100% seguro) /var/log/apache2/.

Publique sus archivos de configuración y mensajes de depuración; aumentará enormemente las posibilidades de recibir sugerencias útiles.

Actualizar: Bueno, parece que activaste el alojamiento virtual basado en nombres. Básicamente, su configuración parece razonable. En la <VirtualHost ...>cláusula, debe especificar el puerto de destino como <VirtualHost *:443>y así.

Las directivas DocumentRooty ServerNameestán aquí, está bien. Probablemente su servidor virtual no sea invocado cuando solicite la página.

Esto puede deberse a que Apache no sabe a qué IP sub.domain.comapunta. ¿Lo tienes sub.domian.comen DNS o, al menos, en el archivo de hosts?

Más información sobre hosts virtuales basados ​​en nombres:http://httpd.apache.org/docs/2.2/vhosts/name-based.html

información relacionada