viernes, 19 de octubre de 2012

Virtualhosting en apache


Para tener dos sitios web , con diferentes nombres, diferentes contenidos y que escuchen por el mismo puerto, tenemos que hacer virtualhosting.

En este artículo lo haremos en apache2, claro esta que lo haremos en local ya que no disponemos de dos dominios:

Empezaremos instalando apache

aptitude install apache2

A continuación crearemos en /srv/ el directorio www. Es conveniente que se cree el directorio ahí y no dejarlo en /var:

mkdir /srv/www

Después  crearemos en www tantos directorios como nombres de páginas queramos ofrecer, en nuestro caso seran sitio1 y sitio2:

mkdir /srv/www/sitio1
mkdir /srv/www/sitio2

En el primer directorio serviremos www.sitio1.com y en la segunda www.sitio2.com.

Ahora lo que tenemos que hacer es configurar en /etc/apache2/sites-avalaible los diferentes sitios que vamos a tener, lo aconsejable es copiar el default para no tener problema de sintaxis:

cp /etc/apache2/sites-avalaible/default   /etc/apache2/sites-avalaible/sitio1
cp /etc/apache2/sites-avalaible/default   /etc/apache2/sites-avalaible/sitio2

Ahora configuraremos el archivo que hemos copiado con el editor que nosotros queramos. 
Quedaría una cosa así:
<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName  www.sitio1.com
        DocumentRoot /srv/www/sitio1
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /srv/www/sitio1>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

 Como vemos hemos cambiado donde ponía /var/www por nuestro directorio donde estará cada uno de los diferentes  sitios webs.

Después tenemos que crear el enlace simbólico:

a2ensite sitio1
a2ensite sitio2

Y tenemos que deshabilitar la que te viene por defecto:
a2dissite default

Ahora tenemos que reiniciar apache:
/etc/init.d/apache2 restart

 Para ver nuestra página desde un ordenador dentro de la red local tenemos que modificar en el cliente el archivo /etc/hosts y poner la ip del servidor web con el nombre que le pusimos.

No hay comentarios:

Publicar un comentario