Creación de Host virtuales en Apache 2 (Windows)
Inauguramos nuestro blog con un artículo, a nuestro parecer, bastante interesante para todos los programadores y administradores web. Tarde o temprano tendréis que enfrentaros a la configuración de host virtuales, ya sea por un requisito o por simple gusto.
Por normal general, cualquier programador web trabaja de forma local, creando para ello diferentes carpetas en el directorio de publicación de su servidor. De esta forma, siempre utilizaremos rutas de la siguiente forma:
http://localhost/proyecto1
http://localhost/proyecto2
Pues bien, configurando nuestros directorios virtuales, podremos acceder a los proyectos a través de los siguientes dominios:
http://www.proyecto1.com
http://www.proyecto2.com
Debemos de realizar dos sencillos pasos:
1. Configuración del archivo hosts 2. Configuración del archivo httpd.conf de Apache
NOTA: Se recomienda realizar copias de seguirad de los archivos a modificar.
1. Configuración del archivo hosts
El archivo hosts lo podremos localizar en diferentes rutas, según el sistema operativo instalado. Os detallamos en que ruta podreis encontrarlo en Windows XP, Vista y 7:
C:\Windows\System32\drivers\etc\hosts
Ahora tendremos que añadir una línea de la siguiente forma:
127.0.0.1 http://www.proyecto1.com
Podremos añadir un comentario para facilitar la organización del archivo:
#Redirección del proyecto 1 127.0.0.1 http://www.proyecto1.com
A partir de este momento, cuando escribamos en nuestro navegador la dirección http://www.proyecto1.com, nuestro equipo nos redirigirá a nuestro servidor local. El siguiente paso será indicarle a nuestro servidor, en este caso Apache 2, que carpeta utilizaremos para alojar nuestro proyecto.
2. Configuración del archivo httpd.conf de Apache
El archivo httpd.conf lo podremos localizar en el directorio de configuración de apache «apache/conf». A través de este archivo, indicamos al servidor que carpeta corresponde a los dominios configurados previamente. Es posible que en este archivo no encuentres ninguna sección dedicada a los virtual hosts, si es así, deberemos de realizar las modificaciones en el archivo «httpd-vhosts.conf», localizable en «apache/conf/extra».
Lo primero será descomentar la siguiente línea:
##NameVirtualHost *:80
Deberá quedar así:
NameVirtualHost *:80
Ejemplo de configuración del proyecto 1:
<VirtualHost *:80>
ServerAdmin postmaster@proyecto1.com DocumentRoot "C:/xampp/htdocs/proyecto1" ServerName www.proyecto1.com
</VirtualHost>
Ejemplo de configuración del proyecto 2:
<VirtualHost *:80>
ServerAdmin postmaster@proyecto2.com DocumentRoot "C:/xampp/htdocs/proyecto2" ServerName www.proyecto2.com
</VirtualHost>
– ServerAdmin será la etiqueta que indicará el correo electrónico del administrador del sitio (no imprescindible).
– DocumentRoot será la ruta del directorio donde está almacenado el proyecto.
– ServerName será el domino indicado anteriormente en el archivo hosts
Se podrían configurar más parámetros:
<VirtualHost *:80>
ServerAdmin postmaster@dummy-host.localhost DocumentRoot "C:/xampp/htdocs/dummy-host.localhost" ServerName dummy-host.localhost ServerAlias www.dummy-host.localhost ErrorLog "logs/dummy-host.localhost-error.log" CustomLog "logs/dummy-host.localhost-access.log" combined
</VirtualHost>
Ahora solo queda realizar el último paso, reiniciar nuestro servidor apache. Después de todo esto todo deberá de andar como la seda. Suerte!