servidor web multidominio

Cómo tener varios dominios en un servidor web

Hace tiempo ya vimos en un artículo de éste mismo blog cómo instalar un servidor web en la Raspberry Pi bajo el sistema operativo Raspbian. Hoy vamos a ver cómo puedes tener varios dominios en un mismo servidor. Puedes obtener hasta 5 dominios gratuitos en duckdns.org.

Lo primero será irte a la carpeta donde se aloja el contenido del servidor web (/var/www/html) y crear una carpeta por cada dominio. Vamos a suponer que vas a tener alojados los dominios dominio1.com, dominio2.com y dominio3.com. Para ello tendrás que escribir los siguientes comandos en la terminal:

cd /var/www/html
sudo mkdir dominio1.com
sudo mkdir dominio2.com
sudo mkdir dominio3.com

Recuerda cambiar dominio#.com por el nombre de los dominios que vayas a tener. Puedes tener tantos como quieras.

Lo siguiente es configurar el propietario de esas carpetas y sus archivos así como los permisos. Lo puedes hacer con las siguientes instrucciones:

sudo chown -R www-data:www-data dominio1.com
sudo chown -R www-data:www-data dominio2.com
sudo chown -R www-data:www-data dominio3.com

sudo find dominio1.com -type d -print -exec chmod 775 {} \;
sudo find dominio2.com -type d -print -exec chmod 775 {} \;
sudo find dominio3.com -type d -print -exec chmod 775 {} \;

sudo find dominio1.com -type f -print -exec chmod 644 {} \;
sudo find dominio2.com -type f -print -exec chmod 644 {} \;
sudo find dominio3.com -type f -print -exec chmod 644 {} \;

Ahora tienes que copiar el archivo 000-default.conf con la siguiente instrucción:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/dominio1.com.conf

Y editar ese archivo que hemos copiado con:

sudo nano /etc/apache2/sites-available/dominio1.com.conf

Añade en dicho archivo el siguiente contenido modificando lo que consideres oportuno:

<VirtualHost *:80>
     ServerAdmin administrador@dominio1.com
     ServerName dominio1.com
     ServerAlias www.dominio1.com
     DocumentRoot /var/www/html/dominio1.com
     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Realiza la misma acción (copiar el archivo 000-default.conf y modificar el contenido) por cada dominio que vayas a tener alojado.

Ahora tienes que activar los dominios y desactivar el default con:

sudo a2ensite dominio1.com
sudo a2ensite dominio2.com
sudo a2ensite dominio3.com
sudo a2dissite 000-default.conf

Ahora ya solo te queda reiniciar el servicio con:

sudo systemctl reload apache2

Si has seguido todos los pasos ya tendrás varios dominios alojados en un mismo servidor web. Cuando el servidor web reciba una petición sabrá a que carpeta tiene que ir a buscar el archivo en función de la URL que se haya solicitado en el cliente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *