Articulo de ayuda
Cómo Alojar Varios Sitios Web en un VPS
Aloja varias webs en un VPS: con panel de control o con virtual hosts de Nginx/Apache. Dominios, SSL y recursos compartidos del servidor.
Introducción
Una de las grandes ventajas de un VPS frente al hosting compartido es que puedes alojar varios sitios web en el mismo servidor, sin pagar extra por cada dominio. Cada web con su propio dominio, su propio SSL y su propia configuración.
En este artículo vas a ver dos formas de hacerlo: con un panel de control (lo más fácil) o configurando virtual hosts manualmente (más técnico pero más flexible).
Qué necesitas antes de empezar
Para alojar varias webs en un VPS necesitas:
- Un VPS con recursos suficientes (mínimo 2 GB de RAM recomendados para varias webs).
- Los dominios que vas a alojar, apuntando a la IP de tu VPS.
- Un servidor web instalado (Apache o Nginx) o un panel de control.
Recuerda que cada dominio debe apuntar a la IP de tu VPS mediante un registro A en el DNS. Si los dominios están en miHosting, puedes configurarlo desde el panel.
Método 1: Alojar varias webs con un panel de control (recomendado)
Esta es la forma más sencilla y visual. Una vez instalado un panel como CyberPanel, aaPanel o cPanel en tu VPS, añadir dominios es cuestión de clics.
Con CyberPanel
- Entra al panel.
- Ve a Websites → Create Website.
- Introduce el dominio, el correo y el paquete PHP.
- Repite para cada dominio que quieras alojar.
- Para cada uno, instala el SSL desde la sección del sitio.
[Imagen sugerida: captura de CyberPanel con varios dominios añadidos]
Con aaPanel
- Entra a aaPanel.
- Ve a Website → Add site.
- Introduce el dominio, crea la base de datos si la necesitas.
- Repite para cada dominio.
Con cPanel
- Entra a cPanel.
- Ve a Dominios → Dominios adicionales (Addon Domains).
- Introduce el dominio, la carpeta donde se alojará y la base de datos.
- Repite para cada dominio.
Los paneles gestionan automáticamente los certificados SSL (con Let’s Encrypt), los logs y las configuraciones de cada dominio. Por eso son la opción más cómoda.
Método 2: Alojar varias webs con virtual hosts manualmente
Si no usas panel y prefieres configurar el servidor web directamente, utilizas los virtual hosts (Apache) o server blocks (Nginx).
En Apache
Paso 1: Crear la carpeta para cada web
mkdir -p /var/www/dominio1.com
mkdir -p /var/www/dominio2.com
Cambia el propietario:
chown -R www-data:www-data /var/www/dominio1.com
chown -R www-data:www-data /var/www/dominio2.com
Paso 2: Crear el virtual host de cada dominio
nano /etc/apache2/sites-available/dominio1.com.conf
<VirtualHost *:80>
ServerName dominio1.com
ServerAlias www.dominio1.com
DocumentRoot /var/www/dominio1.com
ErrorLog ${APACHE_LOG_DIR}/dominio1_error.log
CustomLog ${APACHE_LOG_DIR}/dominio1_access.log combined
</VirtualHost>
Repite el proceso para dominio2.com.
Paso 3: Activar los sitios y reiniciar Apache
a2ensite dominio1.com.conf
a2ensite dominio2.com.conf
systemctl reload apache2
En Nginx
Paso 1: Crear la carpeta para cada web
Igual que en Apache.
Paso 2: Crear el server block de cada dominio
nano /etc/nginx/sites-available/dominio1.com
server {
listen 80;
server_name dominio1.com www.dominio1.com;
root /var/www/dominio1.com;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
}
}
Repite para dominio2.com.
Paso 3: Activar los sitios y reiniciar Nginx
ln -s /etc/nginx/sites-available/dominio1.com /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/dominio2.com /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
Configurar el SSL para cada dominio
Con Let’s Encrypt puedes generar certificados gratuitos para cada dominio:
certbot --apache -d dominio1.com -d www.dominio1.com
certbot --apache -d dominio2.com -d www.dominio2.com
Para Nginx:
certbot --nginx -d dominio1.com -d www.dominio1.com
certbot --nginx -d dominio2.com -d www.dominio2.com
Certbot renueva los certificados automáticamente.
Gestión de recursos con varias webs
Alojar varias webs en un VPS significa compartir los recursos del servidor entre todas. Ten en cuenta:
- CPU y RAM se reparten entre todas las webs.
- El disco se comparte: controla el espacio que ocupa cada una.
- La base de datos puede ser compartida o una por web.
- Si una web tiene un pico de tráfico, puede afectar a las demás.
Para aislar webs y evitar que una afecte a otra, algunos paneles permiten limitar los recursos (CPU, RAM, procesos) por dominio.
Consejos útiles
- Usa un panel si tienes varias webs. Gestionar 5 o 10 dominios con virtual hosts manuales se vuelve complicado. Un panel lo simplifica todo.
- Controla el espacio en disco. Cada web suma. Revisa periódicamente el espacio disponible.
- Separa las bases de datos. Crea una base de datos y un usuario distinto para cada web por seguridad.
- Configura el SSL de cada dominio. Cada dominio necesita su propio certificado.
- Haz backup de cada web. No mezcles los backups: uno por dominio, para poder restaurarlos de forma independiente.
Problemas frecuentes
Una web me carga la de otra
Revisa el DocumentRoot (Apache) o el root (Nginx) del virtual host. Si dos dominios apuntan a la misma carpeta, mostrarán lo mismo.
Un dominio no carga
Comprueba que el dominio apunta a la IP del VPS (propagación DNS) y que el virtual host está activado.
El SSL falla en un dominio
El dominio debe estar propagado (apuntando al VPS) antes de generar el certificado. Si no, Let’s Encrypt da error.
Una web afecta al rendimiento de las demás
Si una web tiene un pico de tráfico, consume recursos que afectan al resto. Limita los recursos por dominio desde el panel, o sube de plan de VPS.
No tengo espacio para más webs
Cada web ocupa disco. Revisa qué ocupa el espacio con du -sh /var/www/* y limpia lo que no necesites, o amplía el disco del VPS.
Preguntas frecuentes
¿Cuántas webs puedo alojar en un VPS?
No hay un límite fijo. Depende de los recursos del VPS (CPU, RAM, disco) y del tráfico de cada web. Un VPS de 2 GB puede alojar varias webs pequeñas sin problema.
¿Cada web necesita su propia base de datos?
No es obligatorio, pero muy recomendable por seguridad y organización. Si una base de datos falla, las demás webs siguen funcionando.
¿Puedo mezclar WordPress, PrestaShop y webs estáticas en el mismo VPS?
Sí. Cada web es independiente y puede usar la tecnología que necesite, siempre que el servidor web y PHP estén instalados.
¿Las webs se ven entre sí?
Si están bien configuradas, no. Cada web tiene su propia carpeta y, opcionalmente, su propio usuario. Una web no debería poder acceder a los archivos de otra.
¿Necesito un VPS para varias webs?
No necesariamente. El hosting compartido multidominio de miHosting permite alojar varias webs sin necesidad de VPS. El VPS conviene cuando necesitas recursos garantizados o control total.
Varias webs, un solo servidor
Alojar varios sitios web en un VPS es una de sus grandes ventajas: un solo servidor, varios dominios, todo bajo tu control. Si tienes varias webs, un panel de control lo gestiona todo de forma visual. Si prefieres control total, los virtual hosts te lo dan.
Si prefieres no ocuparte de la configuración técnica, en miHosting ofrecemos VPS administrados donde instalamos el panel, añadimos tus dominios, configuramos el SSL y mantenemos el servidor por ti. También puedes optar por nuestro hosting multidominio si todavía no necesitas un VPS. Abre un ticket desde tu panel de cliente y te asesoramos.