Home > General > XAMPP CONFIGURAR DOMINIOS VIRTUALES (HTTPD-VHOSTS.CONF)

Si eres programador en PHP entonces seguramente como servidor de pruebas utilizas algún kit de Software como Xampp o Wamp.

En esta ocación les explicaré como configurar los virtual host de xampp. que en realidad pertenece a Apache.

¿Que es Virtual Host?

es el nombre de nominio para acceder a tu local host. ejm. cuando tu escribes en el navegador: LOCALHOST este simplemente redirige hacia 127.0.0.1 Entonces como hacemos para poner otro nombre y que este nombre redirija a la carpeta que queramos?.

Empezamos:

Primer Paso – Configuración de Archivo hosts de windows

Ejecuta Notepad en modo administrador y abre el siguiente archivo:

c:\windows\system32\drivers\etc\hosts

El Archivo hosts es un archivo no es una carpeta. Es un archivo sin extensión. este archivo es una base de datos de los nombres de los host virtuales. Al final verás textos como:

# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
127.0.0.1 localhost
Ojo: No cambies ese nombre porque otras aplicaciones usan este nombre para funcionar. lo que tienes que hacer es agregar los nombres que tu quieras direccionando a la misma IP 127.0.0.1

# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
127.0.0.1 localhost
127.0.0.1 sitio.com
127.0.0.1 sitio2.com

Evita usar extensiones existentes ejm .com .net .org etc. puedes agregar tantos nombre como quieras.

Muy bien si ya hiciste esto guarda el archivo. Si no puedes guardar es porque no iniciaste notepad u otro programa como administrador (esto en win7).

Segundo Paso – Configuración de Archivo httpd-vhosts.conf

httpd-vhosts.conf es el archivo de Nombres Virtuales de Apache. En nuestro xampp está en la siguiente dirección:

C:\xampp\apache\conf\extra\httpd-vhosts.conf

Si este archivo esta aun virgen podrás apreciar que todo está comentado. y al final hay ejemplos de como colocar nuevos nombres virtuales.

##<VirtualHost *:80>
## ServerAdmin [email protected]
## DocumentRoot /www/docs/dummy-host2.example.com
## ServerName dummy-host2.example.com
## ErrorLog @rel_logfiledir@/dummy-host2.example.com-error_log
## CustomLog @rel_logfiledir@/dummy-host2.example.com-access_log common
##</VirtualHost>

Yo feliz cambié todo con los datos que puse en mi archivo host, descomenté todo y cuando accedí me enviaba el error Prohibido el Acceso. Pues bien lo que debemos hacer es darle los paramentros para que sea de acceso publico.

Aqui les pongo mi Configuración tal y cual está funcionando.

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot C:\xampp\htdocs
ServerName sito.com
ServerAlias www.sitio.com
</VirtualHost>

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot c:\xampp\htdocs\sitio2
ServerName sitio2.com
ServerAlias www.sitio2.com
<Directory “c:\xampp\htdocs”>
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

Como pueden ver tengo dos host virtuales, el primero no tiene mucha configuración porque direcciona a la misma carpeta publica de xampp. Seguramente en otro lado estan los permisos es por eso que cuando direccionas a esta carpeta funciona todo normal.

Ahi si tenemos que agregar los permisos:

<Directory “c:\xampp\htdocs\sitio2”>
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>

Y eso es todo ahora cuando escribo sitio2.com (obviamente este nombre esta registrado en el archivo host de windows) me direcciona al contenido de la carpeta c:\xampp\htdocs\sitio2