Virtual Host en Ubuntu 9.10
Cuando tenemos solo un proyecto, no vemos la necesidad de crear host virtuales para separar los mismos, solo utilizamos la raiz / (/var/www/) para nuestro proyecto y somos felices
.
Pero, a la hora de múltiples proyectos, esto es un problema que debemos solucionar para no aumentar la complejidad y evitar posibles errores de programación a futuro.
Suponemos que tenemos 2 proyectos (Moodle y una copia de seguridad de Zarpele!), y actualmente lo tenemos instalados en:
/var/www/moodle /var/www/zarpele
Bien para hacer bien las cosas debemos crear en nuestro proyectos 2 host virtuales. A continuación crearemos el host que utilizaremos para Moodle y de forma idéntica podrán crear los demás.
Editando hosts
El archivo hosts de un ordenador es, en su origen, un vestigio de los tiempos en que sólo había unos pocos dominios y se enviaba la lista con todos ellos y sus respectivas IPs en un archivo llamado hosts.
En la actualidad todas las peticiones se realizan a los servidores DNS. No obstante, los sistemas actuales mantienen este archivo, de modo que es posible modificar a mano a qué IP deben resolver determinados dominios. Así su principal utilidad actual es el bloqueo de las direcciones de la publicidad web.
Aja si mucha Wikipedia, en resumen editaremos el archivos hosts para que en vez de dejarle a nuestro servidor de DNS que resuelva el nombre de dominio ingresado y lo relacione con una IP se resuelva localmente sin necesidad de “buscar” ese dominio ya que tenemos la relacion IP-Dominio en nuestra PC.
Con privilegios de administrador, editaremos el siguiente archivo
sudo gedit /etc/hosts
Ahora bien tendremos algo asi…
127.0.0.1 localhost # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
Atención: Este archivo puede variar según características de la PC utilizada.
El nombre que vamos a utilizar es moodle-local, pueden elegir el que quieran, pero traten de no poner una pagina verdadera como taringa.net , ya que esta podría no funcionar o en todo caso nos direccionaría a nuestro proyecto
127.0.0.1 localhost 127.0.0.1 moodle-local # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
Creando sites-available
Lo siguiente que debemos hacer, es informarle a Apache de estos host. Para el cual debemos crear 2 (seguiremos con el ejemplo y solo creare moodle-local, igualmente se hacen los demas) ficheros en /etc/apache2/sites-available.
Crearemos moodle-local con el siguiente contenido…
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName moodle-local DocumentRoot /var/www/moodle <Directory /> Options FollowSymLinks AllowOverride all </Directory> <Directory /var/www/moodle> Options Indexes FollowSymLinks MultiViews AllowOverride all Order allow,deny allow from all </Directory> </VirtualHost>
Las lineas importantes son:
ServerName, aquí pondremos el nombre de dominio que acabamos de crear en nuestro archivo hosts.
DocumentRoot, aquí pondremos la ruta raiz donde se encuentra nuestro proyecto
Creando sites-eneable
Ahora utilizaremos el comando a2ensite “available to enabled site”, para dejar andando nuestro virtualhost…
sudo a2ensite moodle-localSi todo sale bien, la consola nos devolvería
Enabling site moodle-local. Run '/etc/init.d/apache2 reload' to activate new configuration!
Reiniciando Apache
Como leyeron anteriormente, debemos reiniciar nuestro apache para que todo que joya.
sudo /etc/init.d/apache2 reload
Y listo!!!
Probando nuestro Host Virtual
En nuestro navegador ponemos moodle-local y entramos a nuestro moodle.
Puedes seguir cualquier respuesta a esta entrada mediante el canal RSS 2.0. Puedes dejar un comentario o enviar un trackback desde tu propio sitio.














