En este tutorial, lo guiaremos para configurar el host virtual apache o vhost en ubuntu 16.04. El uso de host virtual permite al administrador usar un servidor para alojar varios dominios o sitios fuera de una sola interfaz o IP mediante el uso de un mecanismo de coincidencia. Básicamente, puede asignar una dirección IP al servidor de varios nombres de dominio. El método de alojamiento virtual se usa ampliamente en un proveedor de alojamiento compartido.
Requisitos
Antes de comenzar con esta guía, al menos debe tener conocimientos básicos de Linux, conocer el comando básico de shell para Linux, una cuenta de usuario root o no root con privilegios sudo configurados en su servidor. Además, se le ha instalado apache. Si su servidor no instaló Apache, puede seguir el tutorial Cómo instalar Apache PHP en Ubuntu 16.04.
Debe haber apuntado su nombre de dominio a la dirección IP de su servidor. Para el ejemplo de este tutorial, crearemos un host virtual con los siguientes detalles:
Domain name : test1.example.com Document root : /var/www/example.com/
Paso 1:crear la estructura del directorio
La raíz del documento es el directorio de nivel superior que Apache busca para encontrar contenido para servir. Por lo general, usa el nombre public_html para facilitar el reconocimiento. Por ejemplo, para nuestros sitios, vamos a hacer nuestros directorios así:
$ sudo mkdir -p /var/www/test1.example.com/public_html
Paso 2:crear una página de ejemplo para el host virtual
Crearemos un archivo html simple y lo colocaremos en la raíz del documento del host virtual
$ nano /var/www/test1.example.com/public_html/index.html
En este archivo, cree un documento HTML simple que indique el sitio al que está conectado. Mi archivo se ve así:
<html> <head> <title>Welcome to test1.example.com!</title> </head> <body> <h1>Success! The test1.example.com virtual host is working!</h1> </body> </html>
Paso 3:crear nuevos archivos de configuración de host virtual
Apache viene con un archivo de host virtual predeterminado llamado 000-default.conf que se usa por defecto o para capturar un host virtual indefinido. Las utilizaremos como plantillas para crear nuestro host virtual. Cree nuestro archivo de configuración de host virtual basado en el archivo 000-default.conf usando el siguiente comando:
$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/test1.example.com.conf
Abra un nuevo archivo de configuración de host virtual usando nano
$ sudo nano /etc/apache2/sites-available/test1.example.com.conf
Edite ese archivo y quede así:
<VirtualHost *:80> ServerAdmin [email protected] ServerName test1.example.com ServerAlias test1.example.com DocumentRoot /var/www/test1.example.com/public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Nota:puede usar ServerAlias para crear un host virtual con un nombre diferente pero con la misma raíz de documento, por ejemplo, www.example.com y example.com. La configuración será así
ServerName example.com ServerAlias www.example.com
Paso 4:habilite la nueva configuración de host virtual para Apache
Ahora que hemos creado nuestros archivos de host virtual, debemos habilitarlos. Apache incluye algunas herramientas que nos permiten hacer esto. Usamos aen2site para habilitar la configuración
$ sudo a2ensite test1.example.com.conf
Debe reiniciar Apache para que estos cambios surtan efecto:
$ sudo systemctl restart apache2
Paso 5:prueba en tu navegador
Abra su navegador, en este ejemplo, abriremos la URL http://test1.example.com para verificar los resultados.