Crear host virtual en WampServer
Para crear un host virtual en WampServer, en un entorno de desarrollo, tenemos varios proyectos en cuales trabajamos y para realizar el testing de cada una de las aplicaciones necesitamos recrear un servidor de producción, lo más paracido posible, y para eso el Servidor Web Apache nos permite realizar host virtuales. Es decir podemos crear varios Host o que nuestro Servidor web hospede a varios dominios.
Vamos a empezar:
1. Editar el archivo C:\wamp\bin\apache\Apache2.2.21\conf\httpd.conf
Descomentamos la Linea Include conf/extra/httpd-vhosts.conf, quitandole el #. En este archivo configuraremos los host virtuales.
# Virtual hosts Include conf/extra/httpd-vhosts.conf |
2. Luego agregamos al final del archivo C:\wamp\bin\apache\Apache2.2.21\conf\extra\httpd-vhosts.conf , las siguientes lineas:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot "c:/wamp/www" ServerName localhost ErrorLog "logs/localhost-error.log" CustomLog "logs/localhost-access.log" common </VirtualHost> # PRIMERA FORMA <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "c:/wamp/www/midominio.com" ServerName www.midominio.com ErrorLog "logs/midominio.com-error.log" CustomLog "logs/midominio.com-access.log" common </VirtualHost> # O ESTA SEGUNDA FORMA <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "c:/wamp/www/midominio2.com" ServerName www.midominio2.com <Directory "c:/wamp/www/midominio2.com"> Options Indexes FollowSymLinks AllowOverride All Order Deny,Allow Deny from all Allow from all </Directory> ErrorLog "logs/midominio2.com-error.log" CustomLog "logs/midominio2.com-access.log" common </VirtualHost> |
El primer host es para el Servidor por defecto localhost, luego agregamos el dominio midominio.com, este nombre de dominio funcionará solo de manera local.
3. Ahora creamos la carpeta midominio.com en c:/wamp/www/ , para el host virtual que creamos.
4. Y por último editamos el archivo C:\WINDOWS\system32\drivers\etc\hosts , agregando lo siguiente:
127.0.0.1 www.midominio.com |
Configurar virtual host en el puerto 8080
Si queremos usar el puerto 8080 y/o el puerto 80 , debemos configurar de la siguiente manera:
1. Editar el archivo C:\wamp\bin\apache\Apache2.2.21\conf\httpd.conf de la siguiente manera para que el servidor Apache escuche en los puertos 80 y 8080.
Listen 80 Listen 8080 |
2. Modificamos el Virtual host agregando el puerto 8080.
<VirtualHost *:8080> ServerAdmin [email protected] DocumentRoot "c:/wamp/www/midominio.com" ServerName www.midominio.com ErrorLog "logs/midominio.com-error.log" CustomLog "logs/midominio.com-access.log" common </VirtualHost> |
3. Reiniciamos el servidor Apache y ya debe estar funcionando, probamos http://midominio.com:8080
.
Otra forma de configurar el host virtual en WampServer
Usando la carpeta vhosts que viene por defecto en wampserver, lo he probado en la versión 2.4.
Para esto vamos a configurar el archivo c:\wamp\bin\apache\Apache2.4.4\conf\httpd.conf y al final del archivo debe quedar así, por defecto esta descomentado.
IncludeOptional "c:/wamp/vhosts/*" Include "c:/wamp/alias/*" |
Entonces en la carpeta wamp/vhost creamos un archivo con el nombre del dominio ejemplo wamp/vhosts/www.midominio.com
Y en el archivo pegamos.
<VirtualHost *:80> DocumentRoot "c:/wamp/www/midominio.com" ServerName midominio.com ServerAlias www.midominio.com <Directory "c:/wamp/www/midominio.com"> Options Indexes FollowSymLinks AllowOverride All Order Deny,Allow Deny from all Allow from all </Directory> </VirtualHost> |
Para usar el ServerAlias debemos modificar el archivo hosts así:
127.0.0.1 www.midominio.com midominio.com |
Acceder al Host Virtual desde una red LAN
Si estamos en una red de área local o LAN y queremos acceder desde una PC cliente hacia el Host Virtual que hemos configurado con WampServer. Solo tenemos agregar la IP del servidor en el archivo C:\WINDOWS\system32\drivers\etc\hosts de la PC cliente.
Si la IP del servidor es 192.168.1.33, agregaríamos de esta manera.
192.168.1.33 www.midominio.com midominio.com |
Cada vez que solicitemos la dirección midominio.com va a buscar en la IP del servidor donde esta nuestro Host Virtual y así no salga a Internet buscando el dominio.
Les recomiendo que pongan un prefijo al dominio u otra extensión de dominio, por ejemplo: testdominio.com o dominio.dev, esto lo recomiendo para que no haya conflictos con el dominio verdadero.
Listo ya tenemos configurado nuestro Host Virtual con WampServer.
Buenas tardes, hermano disculpa mi ignorancia pero he seguido todos los pasos que has publicado pero al momento de modificar el archivo C:\WINDOWS\system32\drivers\etc\hosts, no me lo permite hacer porque aparentemente está siendo utilizado por otro programa. Me darías alguna sugerencia al respecto? He cerrado todos los programas incluyendo el mismo WampServer pero no me ha servido de nada… Gracias de antemano!
Si no te permite modificar el archivo hosts, prueba entrando con el usuario administrador de windows
va. y como seria para modo online osea el wampserver en modo online ??
por si tengo mas de una aplicacion como configuro para solo dar los diferentes nombres o ip de los dominios y que hagan uso de este??
por ahora e logrado conectar el wamp a internet y por medio de mi: ip publica mis amigos acceden pero a la pagina principal del wampserver
lo que me gustaria hacer es. direccionar a cada proyecto o aplicacion 🙂 como puedo hacer esto? o como lo hago por medio de ip ??
Hola Carlos, si deseas ver tus diferentes proyectos desde Internet, lo más fácil sería que lo organices por carpeta ejemplo http://miippublica/proyecto1/ , http://miippublica/proyecto2/ , de lo contrario tendrías que comprar uno o varios dominios.
Hola he hecho todos los pasos y el navegador aun me toma el dominio de internet. He hecho algo mal?.
Me he dado cuenta y solo me ha funcionado si me desconecto de internet.
Debes agregar
En el archivo hosts
hola no me funcionó como lo explicas porque descomentareo
Include conf/extra/httpd-vhosts.conf
me sale que no funciona en este servidor, entonces lo dejo como estaba #Include conf/extra/httpd-vhosts.conf
y lo hice de la siguiente manera:
copio el archivo C:\wamp\alias\phpmyadmin.conf y le coloco el nombre de mi dominio ejemplo dominio.com.conf
en él agrego el siguiente código:
”
DocumentRoot c:\wamp\www\Codein
ServerName ccnp.com
” ojo sin las comillas
y el archivo: C:\Windows\System32\Drivers\etc\host
agrego 127.0.0.1 dominio.com
eureca me funcionó!!!
no me lo deja subir bien entonces miren este video http://www.youtube.com/watch?v=cZ9FU7x97qw
Gracias por el dato no sabia que se podía crear host virtual de esa forma, pero seria bueno que pongas que tipo de error te sale cuando lo configuras de la forma que digo, para descubrir cual es el error.
hola porque no puedo ver mi sitio en otra maquina que no sea la q esta el wamp
mil gracias
Técnicamente si puedes ver el sitio con wamp desde otra pc, siempre y cuando estén en red y configures la pc con el wamp para que se vea desde otras PCs y en la otra pc agregarías en el archivo host el dominio o ip del sitio que quieres ver
Seria posible una explicación un poco mas detallada , respecto a la pregunta de marcealexa. mil gracias.
Haber un ejemplo PC01 Y PC02 están en la misma red:
PC01
– Creas tu servidor con wamp y configuras tu host virtual http://www.midominio.com
PC02
– Agrega en el archivo hosts
Ip_De_PC01 www.midominio.com
Desde PC02 desde tu navegador web, ingresa a http://www.midominio.com y deberías ver el sitio web.
Si no ingresas prueba con esta configuración de host virtual:
Recuerda cada cambio que hagas en la configuración del host virtual debes reiniciar el servicio web “apache”
Admin una duda:
— Hay alguna forma de que en una RED LOCAL, que los usuarios se conecten a la PC principal(con WAMP) sin necesidad de introducir la ip por ejemplo:
—
http://198.205.10.50/proyecto/PaginaDemo
porhttp://ComputerName/proyecto/PaginaDemo
y sin necesidad de que los dispositivos anden modificando el host ServerAlias en el archivo hosts (127.0.0.1—www.midominio.com)— DIgo esto por que no todos los dispositivos que se conecten a la red local son Windows, otros son androids, iPhones, etc.
— Por ejemplo si quiero mostrar mi trabajo a mi clase mi idea es que solo se conecten a mi RED LOCAL por wifi, y no es practico decirles que teclen mi ip (192,201,10,1) seria mejor decirles entren a:
http://trabajotemporal/
, y tampoco decirles entren al host y modifiquen el alias si solo les voy a mostrar por media hora.— Ojala me hayan anetendido la idea y si hay alguna solucion.
Bueno en una red local la única opción que veo es que desde tu router redirijas el trafico de
http://trabajotemporal/
a tu pc principal, pero ya seria configurar el router y no se si es posible eso o como se tendría que configurar.Buenas.. tengo un servidor web con ip publica fija y deseo saber como crear subdominios en Apache y que sean publicos.
es decir tengo un dominio que para este ejemplo lo llamare http://www.midominio.com y quisiera entrarle desde cualquier equipo (con internet) a un subdirectorio de mi directorio raiz, utilizando por ejemplo http://www.sub.midominio.com. Se puede??
Sería como crear un nuevo host virtual.
Y en el archivo hosts
Muy bueno,
he creado el host sin fallo. Ahora mi problema está, en que no me saca los errores al fichero de log de apache. Lo he configurado del siguiente modo, el fichero me lo crea, pero los errores no me los escribe. ¿Alguna idea?
DocumentRoot “c:/wamp/www/ssd/microsites/www.monbus.es”
ServerName monbushost
ServerAlias monbushost
# Archivos de logs:
ErrorLog C:\wamp\bin\apache\Apache2.4.4\logs\monbushost.error.log
LogLevel debug
CustomLog C:\wamp\bin\apache\Apache2.4.4\logs\monbushost.access.log combined
…
Pues ciertamente tienes razón lo he probado y no captura los errores por host virtual, los errores lo esta capturando en el archivo por defecto del apache C:\wamp\logs\apache_error.log debe ser algún error del wamp server, voy a probar con otras versiones haber si ocurre lo mismo.
Tengo un problema en mi red WLAN cuando conecto otras PC’s tengo que entrar con la IP + :8080 por ejemplo ip del servidor 192.168.1.102:8080 solo asi me entra como hago para ponerle un nombre de dominio.
La única forma que veo, es que adquieras un dominio como el de noip.com y lo configures en tu router para que apunte a la ip de tu servidor.
cuando cargo mi pagina desde internet me muestra la pagina de inicio del wamp y quiero q me muestre directo a mi sitio web,tambien quiero averiguar como puedo editar varios sitios en mi servidor wamp
En tu wampserver crea tu host virtuales, debe quedar así: archivo c:/wamp/vhosts/localhost este es para el dominio por defecto, si deseas puedes mostrar una pagina en blanco y no se vea la pagina del wamp y otro archivo para tu dominio c:/wamp/vhosts/localhost/midominio.com , sigue la guía del post.
Buenos días compañero :
He seguido todos los pasos de tu tutorial para crear un virtual host, pero una vez que reinicio Apache, me aparece el siguiente mensaje :
“FORBIDDEN You don’t have permission to access / on this server.”
Entiendo que crear un virtual host, sirve para poner una dirección web amigable “ejem : http://www.pepe.rad“, en vez de especificar toda la ruta. Lo único que hago diferente de tu tutorial es que mi carpeta para el dominio “pepe.rad”, no está dentro de la carpeta “c:\wamp\www”, sino en “d:\vhosts\pepe.rad”, y el archivo “index.php”, está en “d:\vhosts\pepe.rad\htdocs”
Uso wampserver 3.0.0 y Apache 2.4.17.
Mi archivo “httpd-vhosts.conf” es :
# localhost – para definir el localhost
ServerAdmin webmaster@localhost
DocumentRoot “d:/wamp/www”
ServerName localhost
ErrorLog “logs/localhost-error.log”
CustomLog “logs/localhost-access.log” common
# dominio pepe.rad
ServerAdmin [email protected]
DocumentRoot “d:/vhosts/pepe.rad/htdocs”
ServerName
www.pepe.rad
ErrorLog “logs/pepe.rad-error.log”
CustomLog “logs/pepe.rad-access.log” common
Y el archivo hosts de windows 10 es así :
127.0.0.1 localhost
127.0.0.1
www.pepe.rad
Todo esto es en local, puesto que estoy haciendo pruebas. Qué es lo que tengo mal? o al estar fuera de la carpeta “d:\wamp\www” tengo que hacer algo más?
Un saludo y muchas gracias de antemano.
Prueba de la segunda forma como esta en el tutorial, pero usa la carpeta www y no vhosts o crear otra carpeta.
También copia bien la ruta de tu carpeta con mayúsculas o minúsculas.