Tu hosting compartido se queda corto. Es hora de dar el salto a VPS. Esta guía te lleva paso a paso sin perder datos ni sufrir downtime.
¿Cuándo migrar a VPS?
| Señal | Descripción |
|---|---|
| Lentitud constante | Sitio lento aunque optimices |
| Límites alcanzados | RAM, CPU, procesos al máximo |
| Necesitas root | Software específico, configuración avanzada |
| Múltiples sitios | Gestionar varios proyectos |
| Más control | SSL, cron, email personalizado |
Antes de empezar
Información que necesitas
□ Acceso FTP/SFTP del hosting actual
□ Acceso phpMyAdmin o credenciales MySQL
□ Lista de dominios y subdominios
□ Cuentas de email existentes
□ Cronjobs configurados
□ Configuración especial (.htaccess, php.ini)
Preparar el VPS
# Actualizar sistema
sudo apt update && sudo apt upgrade -y
# Instalar stack LEMP
sudo apt install nginx mariadb-server php8.2-fpm \
php8.2-mysql php8.2-curl php8.2-gd php8.2-mbstring \
php8.2-xml php8.2-zip -y
# Seguridad básica
sudo apt install ufw fail2ban -y
sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable
Paso 1: Backup del hosting compartido
Archivos
# Desde cPanel: File Manager → Home → Comprimir todo
# O vía FTP: descargar public_html completo
# Desde terminal si tienes SSH
tar -czf backup_web.tar.gz public_html/
Base de datos
# Desde phpMyAdmin: Exportar → SQL → Descargar
# O con mysqldump si tienes acceso
mysqldump -u usuario -p nombre_bd > backup_bd.sql
Email (si aplica)
# Exportar correos desde webmail (IMAP folders)
# O usar herramienta como imapsync después
Paso 2: Configurar VPS
Crear estructura
# Directorio web
sudo mkdir -p /var/www/tudominio.com/public_html
sudo chown -R www-data:www-data /var/www/tudominio.com
# Subir archivos
# Desde tu PC
scp backup_web.tar.gz root@IP_VPS:/var/www/tudominio.com/
# En el VPS
cd /var/www/tudominio.com
tar -xzf backup_web.tar.gz
mv public_html/* public_html/ # ajustar según estructura
Configurar Nginx
# /etc/nginx/sites-available/tudominio.com
server {
listen 80;
server_name tudominio.com www.tudominio.com;
root /var/www/tudominio.com/public_html;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
sudo ln -s /etc/nginx/sites-available/tudominio.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Crear base de datos
sudo mysql
CREATE DATABASE tudominio_db;
CREATE USER 'tudominio_user'@'localhost' IDENTIFIED BY 'password_seguro';
GRANT ALL ON tudominio_db.* TO 'tudominio_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Importar base de datos
mysql -u tudominio_user -p tudominio_db < backup_bd.sql
Paso 3: Actualizar configuración
WordPress wp-config.php
define('DB_NAME', 'tudominio_db');
define('DB_USER', 'tudominio_user');
define('DB_PASSWORD', 'password_seguro');
define('DB_HOST', 'localhost');
Permisos
sudo chown -R www-data:www-data /var/www/tudominio.com
sudo find /var/www/tudominio.com -type d -exec chmod 755 {} \;
sudo find /var/www/tudominio.com -type f -exec chmod 644 {} \;
Paso 4: Testing antes del cambio DNS
Editar hosts local
# En tu PC (para probar sin cambiar DNS)
# Windows: C:\Windows\System32\drivers\etc\hosts
# Linux/Mac: /etc/hosts
IP_DEL_VPS tudominio.com
IP_DEL_VPS www.tudominio.com
Verificar
□ Sitio carga correctamente
□ Login funciona
□ Imágenes se ven
□ Formularios funcionan
□ URLs internas correctas
□ Sin errores en consola
Paso 5: SSL
# Instalar Certbot
sudo apt install certbot python3-certbot-nginx -y
# Obtener certificado
sudo certbot --nginx -d tudominio.com -d www.tudominio.com
Paso 6: Cambiar DNS
Reducir TTL (24h antes)
En tu panel DNS, baja el TTL a 300 (5 minutos) para que el cambio propague rápido.
Actualizar registros
A @ IP_DEL_VPS
A www IP_DEL_VPS
Esperar propagación
# Verificar propagación
dig tudominio.com +short
# Debe mostrar IP del VPS
# O usar: whatsmydns.net
Paso 7: Post-migración
Verificaciones finales
□ SSL funcionando (candado verde)
□ www y sin www funcionan
□ Email funcionando (si aplica)
□ Backups automáticos configurados
□ Monitorización activa
Mantener hosting antiguo
Mantén el hosting compartido activo 1-2 semanas por si necesitas rollback.
Migración WordPress específica
Con plugin (fácil)
- Instalar All-in-One WP Migration en origen
- Exportar sitio completo
- Instalar WordPress limpio en VPS
- Instalar plugin en VPS
- Importar archivo
Con WP-CLI (rápido)
# En hosting antiguo (si hay SSH)
wp db export backup.sql
tar -czf uploads.tar.gz wp-content/uploads/
# En VPS
wp db import backup.sql
tar -xzf uploads.tar.gz -C wp-content/
# Actualizar URLs
wp search-replace 'http://antiguo.com' 'https://tudominio.com' --all-tables
Errores comunes
| Error | Solución |
|---|---|
| 500 Internal Server | Revisar permisos, php.ini |
| 404 en páginas | Configurar rewrite en Nginx |
| Conexión BD fallida | Verificar credenciales wp-config |
| Imágenes rotas | Verificar rutas, permisos uploads |
| SSL no funciona | Regenerar certificado |
Preguntas frecuentes
¿Cuánto tiempo toma migrar a VPS?
Sitio pequeño: 1-2 horas. Sitio mediano con tienda: 2-4 horas. La propagación DNS puede tomar hasta 48h aunque normalmente es menos de 4h.
¿Perderé emails durante la migración?
No si mantienes el hosting antiguo activo. Los emails llegarán al servidor que tenga los registros MX. Migra el email después del sitio web.
¿Puedo volver al hosting compartido si algo falla?
Sí. Por eso recomendamos mantener el hosting antiguo activo 1-2 semanas. Solo cambias el DNS de vuelta si hay problemas.
¿Necesito migrar el email también?
No obligatoriamente. Puedes mantener email en el hosting compartido o usar servicio externo (Google Workspace, Zoho). Migrar email es más complejo.
¿El sitio tendrá downtime durante la migración?
No si lo haces bien. Configura todo en VPS primero, prueba con hosts local, y solo entonces cambia DNS. Máximo unos minutos de inconsistencia durante propagación.
Nuestra recomendación
Para migración sin estrés:
- Prepara todo el VPS antes de tocar DNS
- Prueba exhaustivamente con hosts local
- Cambia DNS en horario de bajo tráfico
- Mantén hosting antiguo como backup
¿Prefieres que lo hagamos nosotros? Avantys ofrece migración gratuita cuando contratas un VPS.
Conclusión
Migrar de hosting compartido a VPS no es difícil si sigues los pasos correctos. La clave es preparar todo antes y probar exhaustivamente antes del cambio DNS.
El esfuerzo vale la pena: ganarás rendimiento, control y flexibilidad.
¿Quieres que lo hagamos por ti?
En Avantys gestionamos tu web, hosting y crecimiento digital de punta a punta. Tú a lo importante.