sábado, 24 de marzo de 2012

Creacion de Host virtuales en Apache

Creacion de Host virtuales en Apache


VirtualHost, en Apache nos permite mantener múltiples nombres de host en nuestro servidor.




Nota
Haz una copia de respaldo de tus archivos de configuración antes de realizar cualquier cambio en ellos.

Podemos aprender a hacerlo mediante el siguiente video o siguiendo el texto que le sigue.




Al trabajar en nuestro servidor web local, nuestros proyectos, acostumbramos guardarlos en carpetas separadas dentro del directorio raíz (C://WWW/) y convocamos nuestros proyectos en el navegador asi:



http://localhost/tiperu

En lo personal prefiero usar el nombre del dominio real de mis proyectos, que aplicado al ejemplo anterior es:

http://www.tiperu.com en lugar de http://localhost/tiperu

Esto se logra configurando la directiva VirtualHost en el servidor Apache y el archivo host de nuestro S.O.(Windows O Linux)

Configurando el archivo host.

En linux lo encontramos en el directorio /etc/. Para Windows 
C:/Windows/System32/Drivers/etc/, con este archivo se asignan las direcciones IP a los nombres de host. Ahora colocamos tantas entradas como proyectos, relacionando la IP local con nuestros nombres de dominio debajo de 127.0.0.1 localhost:

#localhost
127.0.0.1 localhost
#TIPeru COM SAC (Mi empresa de hosting)
127.0.0.1 www.tiperu.com

El carácter "#" permite ingresar texto a manera de comentario, ahora guardamos. Debemos recordar respetar el nombre completo cuando lo llamamos, porque tiperu.com no tendria efecto por faltar el www que lo antecede.

Configurando el archivo httpd.conf del Apache

Para que Apache acepte los nombres de dominio, agregados al archivo host y los relacione con las carpetas que contienen los archivos de nuestros proyectos; abrimos el archivo conf/http.conf y nos dirigiremos a la siguiente dirección:

#
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#

Quitamos el comentario ##NameVirtualHost *:80 y escribimos:

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
#

Para configurar el host virtual lo agregamos asi:

#TIPeru COM SAC
<VirtualHost *:80>
DocumentRoot "C:/wwww/tiperu"
ServerName www.tiperu.com
</VirtualHost> 

Como vemos el Virtual Host esta encerrado entre <VirtualHost> y </VirtualHost>  que contienen el parametro *:80 que es NameHostVirtual al cual se refiere. Dentro de estas etiquetas, DocumentRoot es la ruta en la cual se guarda nuestra pagina web, ServerName es el nombre del host que agregamos anteriormente al archivo host de nuestro S.O.

Importante:

localhost es nuestro servidor local por defecto pero debemos agregarlo con un virtual host para que todo funcione en orden, agregandole los mismos valores del DocumentRoot y ServerName que posee en su configuración global.

Reiniciamos Apache y si todo esta bien podemos escribir en el navegador  www.tiperu.com  cargara el contenido asignado en el <VirtualHost> y no el directorio raíz del localhost.

Fuente: http://www.maestrosdelweb.com/editorial/host/


No hay comentarios:

Publicar un comentario