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:
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
# 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.
Vemos que el VirtualHost del puerto 80 (también accesible a través del ServerAlias pruebas.local) carga correctamente:
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:
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
# 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
Comprobamos que el segundo VirtualHost funciona sobre el segundo puerto:
Para más info, consultar las entradas sobre: