VirtualHosts Apache | crear varios sitios web en localhost

Hemos hablado varias veces de los VirtualHosts con Apache, y hoy veremos cómo crear varios sitios web en local (localhost) por medio de Virtual Hosts de Apache.

 
Suponiendo que ya tenemos un sitio web habilitado en nuestra máquina con Apache, vamos a crear otro VirtualHost en la misma máquina, apuntando a otro puerto y otro ServerAlias.
 

 
Damos por supuesto que nuestro archivo .conf del sitio actual, que está funcionando ya (situado en /etc/apache2/sites-enabled/), sea este:
 


 

<VirtualHost *:80>
 
ServerName localhost
 
ServerAdmin webmaster@localhost
 
ServerAlias pruebas.local
 
DocumentRoot /var/www/html/wordpress/
 
ErrorLog ${APACHE_LOG_DIR}/error.log
 
CustomLog ${APACHE_LOG_DIR}/access.log combined
 
</VirtualHost>
 
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

 

 
También habremos de retocar nuestro archivo etc/hosts, para que al hacer peticiones al Alias pruebas.local, el equipo sepa que es igual a localhost; así que añadiremos:

localhost      pruebas.local

 

 
De forma que nuestro Servidor Apache responderá a través de localhost, por el puerto 80. También responderá a través del Alias pruebas.local.
 

 

Pruebas funcionamiento VirtualHost 1 con ServerAlias, sobre puerto 80

 
Vemos que el VirtualHost del puerto 80 (también accesible a través del ServerAlias pruebas.local) carga correctamente:

 

 

Creación del segundo sitio Web Apache alojado en el mismo host (en local)

 
Para el segundo sitio web vamos a configurar otro VirtualHost en local, en el archivo /etc/sites-enabled/000-default.conf (situado en /etc/apache2/sites-enabled), que responda a través de otro ServerAlias (pruebas2.local), y otro puerto (el 8080).
 
Así que en dicho archivo, añadimos la configuración del nuevo VirtualHost:
 

 

Simplemente hemos añadido:
 

 
<VirtualHost *:8080>
 
ServerName localhost
 
ServerAdmin webmaster@localhost
 
ServerAlias pruebas2.local
 
DocumentRoot /var/www/html/pruebas2
 
ErrorLog ${APACHE_LOG_DIR}/error.log
 
CustomLog ${APACHE_LOG_DIR}/access.log combined
 
</VirtualHost>
 
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

 

 

–> También hemos de añadir el nuevo ServerAlias en el archivo /etc/hosts

–> Y en el archivo ports.conf hemos de habilitar que escuche peticiones al puerto deseado, además del 80 …

 
Así que en este caso, en el archivo /etc/ports.conf añadimos:
 

Listen 8080

 

 

 

Pruebas funcionamiento VirtualHost 2 con ServerAlias, sobre puerto 8080

 

Comprobamos que el segundo VirtualHost funciona sobre el segundo puerto:

 

 

Acabamos de ver cómo instalar varios VirtualHosts Apache en la misma máquina, para crear varios sitios web, en Local, con diferentes ServerAlias

 
Para más info, consultar las entradas sobre: