SummArg | Cursos y recursos para webmasters

Tener múltiples servidores virtuales en una instalación de XAMPP

Aprender a configurar nuestro XAMPP para trabajar con servidores virtuales puede ser útil para proyectos en donde se necesite tener múltiples dominios o tener una copia local de un website para modificarlo o bien por comodidad. Básicamente lo que buscamos es tener en nuestro servidor las siguientes direcciones habilitadas, cada una con su propio directorio de contenidos:

localhost

www.localhost1.com

www.localhost2.com

www.localhost3.com

Obviamente podemos crear cualquier dominio que querramos en local siempre y cuando respetemos los pasos que seguiremos a continuación.

El archivo hosts de Windows

Este archivo sirve para indicar IPs de un dominio determinado, de modo que no se necesite pasar por un servidor de DNS, y es el modo que tendremos de crear cualquier dominio y que en nuestra PC apunte directamente a nuestro servidor local.

Para editarlo basta con dirigirse a c:Windows\System32\drivers\etc\hosts. Si dentro de la carpeta etc no hay contenido, lo mas probable es que dichos archivos se encuentren ocultos con lo que deberemos presionar ALT para ver el menú del explorador y luego seleccionar tools (herramientas) > folder options (opciones de carpeta) > pestaña view (ver) > marcar show hidden files, folders and drives (mostrar archivos ocultos, carpetas y unidades).

Editamos el archivo y añadimos lo siguiente al final del mismo:

127.0.0.1 localhost1.com
127.0.0.1 www.localhost1.com
127.0.0.1 localhost2.com
127.0.0.1 www.localhost2.com
127.0.0.1 localhost3.com
127.0.0.1 www.localhost3.com

Si nos aparece un mensaje indicándonos que no podemos guardar el archivo por falta de permisos suficientes, entonces abrimos el Notepad haciendo click derecho en el ícono y seleccionado Run as administrator (ejecutar como administrador), modificamos entonces el archivo en cuestión y guardamos.

La configuración de nuestro Apache

Ahora en nuestra instalación de apache buscamos primero el archivo httpd-vhosts.conf que se encuentra en c:xampp\apache\conf\extra y colocamos al final del mismo:

NameVirtualHost 127.0.0.1:80
<VirtualHost www.localhost1.com:80>
DocumentRoot C:/xampp/htdocs/local1
ServerName www.localhost1.com
ServerAlias www.localhost1.com <http://www.localhost1.com>
CustomLog "logs/www.localhost1.com-access.log" combined
ErrorLog "logs/www.localhost1.com-error.log"
</VirtualHost>
<VirtualHost www.localhost2.com:80>
DocumentRoot C:/xampp/htdocs/local2
ServerName www.localhost2.com
ServerAlias www.localhost2.com <http://www.localhost2.com>
CustomLog "logs/www.localhost2.com-access.log" combined
ErrorLog "logs/www.localhost2.com-error.log"
</VirtualHost>
<VirtualHost www.localhost3.com:80>
DocumentRoot C:/xamppht/docs/local3
ServerName www.localhost3.com
ServerAlias www.localhost3.com <http://www.localhost3.com>
CustomLog "logs/www.localhost3.com-access.log" combined
ErrorLog "logs/www.localhost3.com-error.log"
</VirtualHost>
<VirtualHost localhost:80>
DocumentRoot C:/xampp/htdocs
ServerName localhost
ServerAlias localhost
CustomLog "logs/www.localhost.com-access.log" combined
ErrorLog "logs/www.localhost.com-error.log"
</VirtualHost>

Guardamos y creamos las carpetas correspondientes:

C:\xampp\htdocs\local1

C:\xampp\htdocs\local2

C:\xampp\htdocs\local3

Ahora iniciamos nuestro XAMPP y colocamos cualquier contenido de pruebas dentro de, por ejemplo, local1 y chequeamos en nuestro navegador la nueva ruta para visualizarlo: http://www.localhost1.com/prueba.html.

Gracias Alejandro de MASOHost por los tips para ayudarme a configurar mi servidor. También quiero compartir algunos buenos artículos que pueden ayudarlos.

http://pablo.enlapc.com/2007/08/23/configurar-varios-sitios-con-xampp-en-windows/

http://httpd.apache.org/docs/2.0/vhosts/examples.html

http://www.tildemark.com/setting-up-virtual-hosts-with-xampp-running-on-windows-xp/

Dejar un comentario

  1. Excelente me sirvio.. ;)
    1saudo..

  2. MikeHamm

    los puertos en no deberian ser distintos?

  3. Bo0t6

    No me funciono hice todos los pasos y no funciono…

  4. Nicolas

    Buenisimoooooo, me re sirvio, era justo lo que necesitaba.

    Gracias Locoo !!

    Geniall !

  5. walfrer

    Excelente
    funciono bien

  6. No me funciona en win7, me salta el depurador porque se cuelga Apache!!!

    NameVirtualHost 127.0.0.1:80

    DocumentRoot j:/server/motos
    ServerName http://www.miweb1.com.ar
    ServerAlias http://www.miweb1.com.ar
    CustomLog “logs/www.miweb1.com.ar-access.log” combined
    ErrorLog “logs/www.miweb1.com.ar-error.log”

    DocumentRoot j:/server/motos
    ServerName http://www.miweb2.com.ar
    ServerAlias http://www.miweb2.com.ar
    CustomLog “logs/www.miweb2.com.ar-access.log” combined
    ErrorLog “logs/www.miweb2.com.ar-error.log”

Dejar un comentario