Cómo alojar dominios en Apache con VirtualHost
Basado en Linux Debian 10
Si estas siguiendo el Proyecto P4 al introducir http://tu.direccion.ip.servidor verás la pagina por defecto de Apache Web Server. Esta pagina por defecto está alojada en el directorio /var/www/html/. Si redireccionaramos un dominio hacia la IP de nuestro Router y a nuestro Router le dijéramos que todas las peticiones enviadas al puerto 80 apunten hacia la IP de nuestro servidor, tras el dominio se vería la pagina por defecto de Apache Web Server que tenemos ahora mismo pero desde Internet.
El servidor que estamos montando para el Proyecto P4 va a alojar alguna pagina web y algunas aplicaciones que requerirán que varios dominios apunten hacia nuestro servidor.
Para alojar mas de un sitio web en nuestro servidor Apache necesitamos agregar el sitio y activarlo.
Para ello en este artículo vamos a crear una nueva zona de dominio para que nuestro servidor pueda alojar esta zona y todas las que necesitemos repitiendo este mismo tutorial.
VirtualHost para Apache en Debian GNU/Linux
Antes de comenzar nos identificamos como super usuario root con el comando …
su
Continuamos accediendo al directorio donde Apache aloja las zonas de sitios web …
cd /etc/apache2/sites-available/
Seguidamente creamos el archivo de zona donde le diremos a Apache en que directorios está la web, los logs, nombre de dominio, certificados. Como ejemplo voy a usar el dominio p4.com …
vi p4.conf
A continuación agregamos las siguientes líneas y las adaptamos a la necesidad de cada uno, en mi caso es esta …
<VirtualHost *:80>
ServerName p4.com
ServerAlias www.p4.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/p4.com/
<Directory /var/www/html/p4.com> Options Includes FollowSymLinks
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
Guardamos el fichero con la pulsando la tecla ESC y :wq! y continuamos creando el directorio donde alojaremos la web …
mkdir /var/www/html/p4.com
Continuamos dandole permisos de usuario y grupo a Apache con …
chown -R www-data:www-data /var/www/html/p4.com
Agregamos el nuevo fichero a Apache …
/usr/sbin/a2ensite p4.conf
Reiniciamos Apache …
systemctl reload apache2
Ahora tan solo tendréis que ir a vuestro registrador de dominios y modificar la DNS para que el registro A apunte hacia la IP de tu Router, redireccionar el puerto 80 haciendo un NAT de puertos y Apache hará su trabajo.
Esto podemos hacerlo con un dominio de pago y dejarlo funcionando sin problemas pero este servidor que estamos montando es un servidor casero y como se supone que estas en casa con una IP dinámica apuntar un dominio puede ser arriesgado ya que si tu IP cambia el dominio no apuntará correctamente hasta que le cambies manualmente la IP en el registrador.
En próximos artículos nos haremos de dominios gratis y aunque nuestro ISP nos cambie la IP no tendremos problemas y nuestro dominio siempre estará funcionando. Podremos hacernos de varios de estos dominios y tras ellos montaremos nuestras webs y aplicaciones. Desde luego que este artículo sobre cómo montar un Virtualhost en Apache no os sirve de ayuda en este momento pero sí que está bien saber cómo funciona porque lo necesitaremos más adelante.