
La IP que debemos poner ahora en la definición de la directiva Virtualhost cambia, cada IP corresponde a una interfaz de red del servidor web, en nuestro escenario: IP1_Servidor_Web=192.168.200.250, IP2_Servidor_Web=192.168.200.251
Este método no aporta ventajas sobre el anterior, es más, aún puede ser más difícil de mantener si las IP del servidor web se modifican con cierta frecuencia.
¿Cómo lo haces? Sigues el mismo procedimiento usado para los virtualhost basado en nombre, únicamente se diferencia en los ficheros a crear para los virtualhost, así:
- En la configuración de Apache2 existe un directorio
/etc/apache2/sites-available
donde se definen los virtualhost, cada virtualhost en un fichero de texto de configuración distinto, así crea los dos ficheros siguientes en la ruta/etc/apache2/sites-available.
- Fichero configuración virtualhost:
empresa3.com.conf
<VirtualHost IP1_Servidor_Web> DocumentRoot "/var/www/empresa3" ServerName empresa3.com ServerAlias www.empresa3.com empresa3.es www.empresa3.es </VirtualHost>
- Fichero configuración virtualhost:
empresa4.com.conf
<VirtualHost IP2_Servidor_Web> DocumentRoot "/var/www/empresa4" ServerName empresa4.com ServerAlias www.empresa4.com empresa4.es www.empresa4.es </VirtualHost>
Explicación fichero virtualhost:
<VirtualHost>
: Inicio etiqueta virtualhost, define la IP1 del servidor web donde se aloja la página de la empresa, en este caso empresa3. El puerto TCP por defecto es el 80, definido en la configuración principal del servidor, mediante la directiva Listen, por lo cual no es necesario ponerlo. Se pueden usar varias directivas Listen
para especificar varias direcciones y puertos de escucha. El servidor responderá a peticiones de cualquiera de esas direcciones y puertos. Por ejemplo, para hacer que el servidor acepte conexiones en los puertos 80 y 8080, usaremos:
listen 8080
<VirtualHost IP1_Servidor_Web:80>
DocumentRoot "/var/www/empresa3"
ServerName empresa3.com
ServerAlias www.empresa3.com empresa3.es www.empresa3.es
</VirtualHost>
<VirtualHost IP1_Servidor_Web:8080>
DocumentRoot "/var/www/empresa3_8080"
ServerName empresa3.com
ServerAlias www.empresa3.com empresa3.es www.empresa3.es
</VirtualHost>
Para hacer que el servidor acepte conexiones en dos direcciones IP y puertos diferentes, usaremos:
<VirtualHost IP2_Servidor_Web:80>
DocumentRoot /var/www/empresa4/
ServerName empresa4.com
ServerAlias www.empresa4.com empresa4.es www.empresa4.es
</VirtualHost>
DocumentRoot /var/www/empresa3/
: Definición de la ruta donde está alojada la página web en el servidor, en este caso: /var/www/empresa3/ mediante la directivaDocumentRoot
.ServerName www.empresa3.com
: Definición del nombre DNS que buscará la página alojada en la ruta anterior del servidor mediante la directivaServerName
. Es el nombre que escribes en el navegador para visitar la página.ServerAlias empresa3.com
: La directivaServerAlias
permite definir otros nombres DNS para la misma página.</VirtualHost>
: Fin de la etiqueta VirtualHost: fin de la definición de este virtualhost para la empresa3.