Cómo crear Host Virtuales con Apache en Debian 12

Para configurar hosts virtuales con Apache en Debian, primero debes crear un directorio para cada sitio web, luego crear un archivo de configuración de host virtual para cada uno, habilitarlos, y finalmente reiniciar Apache.Asegúrate de que el firewall permita el acceso a los puertos correctos

Primero crear directorios para los sitios web donde estarán alojadas las paginas web:

Crea una estructura de directorios para cada sitio web, por ejemplo

# mkdir -p /var/www/ejemplo.com/public_html
# mkdir -p /var/www/otroejemplo.com/public_html

Demos asegurarnos de que el usuario Apache (generalmente www-data) tenga permisos sobre estos directorios.

Usando estas instrucciones:

# chown -R www-data:www-data /var/www/ejemplo.com# chmod -R 755 /var/www/ejemplo.com

Hecho esto ahora debemos Crear archivos de configuración de host virtual:
para eso vaya al directorio /etc/apache2/sites-available/

# cd /etc/apache2/sites-available/

Creamos un nuevo archivo de configuración para el sitio (se debe hacer esto por cada sitio creado), por ejemplo:

# nano ejemplo.com.conf

Agregamos la siguiente configuración básica en cada archivo (reemplazando con la información que corresponda en cada sitio)

       <VirtualHost *:80>            ServerAdmin webmaster@ejemplo.com            ServerName ejemplo.com            ServerAlias www.ejemplo.com            DocumentRoot /var/www/ejemplo.com/public_html            ErrorLog ${APACHE_LOG_DIR}/error.log            CustomLog ${APACHE_LOG_DIR}/access.log combined        </VirtualHost>

Donde:

ServerAdmin: Dirección de correo electrónico del administrador del sitio.
ServerName: Nombre de dominio principal.
ServerAlias: Nombres de dominio alternativos.
DocumentRoot: Directorio donde se encuentran los archivos del sitio.

Listo ahora debemos habilitar los hosts virtuales: usando el comando a2ensite para habilitar los archivos de configuración así:

# a2ensite ejemplo.com.conf

NOTA:

Si usas un archivo de configuración predeterminado (000-default.conf), puedes deshabilitarlo con: 

# a2dissite 000-default.conf

Para que todo quede funcional debemos reiniciar el servidor Apache para aplicar los cambios:

# systemctl restart apache2

Finalmente Si estás probando los hosts virtuales en tu propia máquina, edita el archivo /etc/hosts con:

# nano /etc/hosts

Quedaría algo así, dependiendo del numero de sitios creados

127.0.0.1 ejemplo.com127.0.0.1 www.ejemplo.com127.0.0.1 otroejemplo.com127.0.0.1 www.otroejemplo.com

Categorias

Tutoriales

julio 2025
L M X J V S D
 123456
78910111213
14151617181920
21222324252627
28293031