Hola comunidad, en esta oportunidad aprenderemos a como configurar un virtual host en apache.
Los virtual host es una configuración del servidor para poder apuntar a distintos alojamientos en múltiples rutas de nuestro servidor y tratandolas como configuraciones independientes.
¿Y para qué nos sirve esto?
para ser mas claros supongamos que contratamos un servicio de VPS y queremos alojar los sitios de nuestros clientes, pues podemos tenerlos en el mismo servicio de VPS creando un virtual host para que actúen como unidades independientes. En este tutorial configuraremos un virtual host de manera local.
1-. Creando archivo de prueba
En este caso debes de tener apache instalado, para este tutorial usaremos la estructura de archivos que nos provee Xampp.
Vamos a comenzar creando una carpeta de prueba dentro de nuestro servidor apache llamada virtual-proyecto
y dentro un archivo index.html
sencillo.
Por último para acto de pruebas vamos a darle permisos 777
sudo mkdir /opt/lampp/htdocs/virtual-proyecto
sudo touch /opt/lampp/htdocs/virtual-proyecto/index.html
sudo chmod -R 777 /opt/lampp/htdocs/virtual-proyecto/
echo "<h1>Desde virtual host EdTeam</h1>" > /opt/lampp/htdocs/virtual-proyecto/index.html
2-. Habilitando virtual hosts
Antes de comenzar a configurar nuestro virtual host necesitamos habilitarlo en archivo de configuración principal httpd.conf
, dentro de él buscaremos el apartado para virtual host y descomentamos la linea.
# Virtual hosts
Include etc/extra/httpd-vhosts.conf
Esto habilitará el archivo de configuración para poder trabajar con virtualhosts
3-. Configurando httpd-vhost.conf
Una vez habilitado vamos a editarlo para configurar nuestro virtualhost, Si tienes xampp la ruta es la siguiente:
sudo nano /opt/lampp/etc/extra/httpd-vhosts.conf
Nos encontraremos con un archivo como este
El archivo nos da algunos ejemplos de como configurar nuestro virtual host. crearemos un nuevo encapsulado con nuestra configuración y salvaremos el documento.
<VirtualHost *:80>
# Correo del administrador del sistema
ServerAdmin edvirtual@edteam.com
# Aquí va el directorio de nuestro directorio raíz de nuestro proyecto
DocumentRoot "/opt/lampp/htdocs/virtual-proyecto/"
# Nombre de nuestro virtual host
ServerName ed.virtual-host.com
# Posible nombre si es que queremos www
ServerAlias www.ed.virtual-host.com
</VirtualHost>
4-. Configurar nuestro archivos hosts
Por último vamos a configurar nuestro archivo hosts
para redireccionar todo el tráfico de nuestro dominio a nuestro servidor de pruebas.
sudo nano /etc/hosts
Dentro de él vamos a escribir nuestro dominio virtual justo como lo pusimos en el archivo httpd-vhost.conf
y asignaremos al ip de local de nuestro servidor.
Una vez modificado ya quedará listo nuestro virtual host para trabajar con el. antes de probarlo vamos a reiniciar nuestro servidor para que los cambios surtan efectos con:
sudo /opt/lampp/lampp restart
5-. Prueba y Anotaciones
Nos dirigimos al browser de nuestra preferencia y accedemos a nuestra dirección ed.virtual-host.com
, si todo ha salido bien deberiamos de ver nuestro proyecto funcionando con la ruta personalizada
Esto es todo!, si tuvieran problemas para acceder a localhost después de configurar les recomiendo especificarlo en el httpd-vhost.conf
de esta manera:
<VirtualHost *:80>
DocumentRoot "/opt/lampp/htdocs/"
ServerName localhost
</VirtualHost>
Muchas gracias comunidad happy coding! y nos vemos en un siguiente artículo :)