🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Guía paso a paso para migrar sitios web en DirectAdmin

Actualizado el 16 de septiembre de 2025

Migrar un sitio web puede sonar a tarea de expertos, pero con las herramientas adecuadas y una guía clara, cualquier persona puede hacerlo sin perder datos ni tiempo de inactividad. En este artículo te explicaré, paso a paso, cómo migrar sitios web en DirectAdmin de forma segura y eficiente. Esta guía está pensada para administradores de sistemas (SysAdmin) que trabajan en entornos Linux, pero también para usuarios que quieren entender el proceso sin complicaciones técnicas.

¿Qué necesitas antes de empezar?

Antes de lanzarte a la migración, asegúrate de tener lo siguiente listo:

  • Acceso SSH al servidor de origen y al servidor de destino (con permisos de root o de usuario administrador).
  • Credenciales de DirectAdmin en ambos paneles (usuario y contraseña del administrador).
  • Espacio en disco suficiente en el destino para alojar los archivos y bases de datos.
  • Una copia de seguridad reciente (por si algo sale mal, siempre es bueno tener un plan B).

[WARNING] No subestimes la importancia de una copia de seguridad. Aunque la migración sea exitosa, un error humano o de red puede dejarte sin datos. Haz una copia antes de empezar.

Paso 1: Preparar el sitio en el servidor de origen

El primer paso es asegurarte de que el sitio web que vas a migrar esté funcionando correctamente en el servidor de origen. Revisa que no haya archivos corruptos, que las bases de datos estén accesibles y que los permisos sean los adecuados.

1.1 Identificar los archivos y bases de datos

En DirectAdmin, cada usuario tiene su propio directorio en /home/usuario/domains/. Dentro de esa carpeta encontrarás las carpetas de cada dominio (por ejemplo, midominio.com). Las bases de datos suelen estar gestionadas por el usuario a través de phpMyAdmin o la interfaz de DirectAdmin.

Abre la terminal y ejecuta:

ls -la /home/usuario/domains/

Esto te mostrará todos los dominios del usuario. Anota el nombre exacto del dominio que vas a migrar.

1.2 Exportar la base de datos

Si tu sitio usa una base de datos (como WordPress, Joomla o cualquier CMS), necesitas exportarla. Desde la terminal, usa mysqldump:

mysqldump -u usuario_bd -p nombre_bd > /home/usuario/backup_bd.sql

Te pedirá la contraseña de la base de datos. Luego, comprime el archivo para transferirlo más rápido:

gzip /home/usuario/backup_bd.sql

[INFO] Si no sabes el nombre de la base de datos, entra en DirectAdmin como usuario, ve a "Base de Datos MySQL" y ahí verás los nombres.

Paso 2: Transferir los archivos al servidor de destino

Ahora que tienes los archivos y la base de datos listos, es hora de moverlos al nuevo servidor. Hay varias formas, pero la más rápida y segura es mediante rsync a través de SSH.

2.1 Usar rsync para transferir archivos

Desde el servidor de destino, ejecuta:

rsync -avz --progress usuario@ip_origen:/home/usuario/domains/midominio.com/ /home/usuario_destino/domains/midominio.com/

Cambia usuario@ip_origen por tus credenciales del servidor de origen. Esto copiará todos los archivos del dominio, incluyendo subdirectorios y permisos.

2.2 Transferir la base de datos

También desde el servidor de destino, copia el backup de la base de datos:

scp usuario@ip_origen:/home/usuario/backup_bd.sql.gz /home/usuario_destino/

Luego, descomprímelo:

gunzip /home/usuario_destino/backup_bd.sql.gz

[TIP] Si la transferencia es muy lenta, puedes comprimir los archivos del sitio primero con tar -czvf sitio.tar.gz /home/usuario/domains/midominio.com/ y luego transferir el archivo comprimido.

Paso 3: Configurar el sitio en DirectAdmin del destino

Ahora que los archivos están en el servidor de destino, hay que crear la configuración del dominio en DirectAdmin.

3.1 Crear el usuario y el dominio

Inicia sesión en DirectAdmin como administrador (generalmente en https://ip_destino:2222). Ve a "Gestión de Usuarios" y crea un nuevo usuario con el mismo nombre que en el origen (si no existe). Luego, dentro de ese usuario, añade el dominio en "Dominios" > "Añadir Dominio". Usa el mismo nombre de dominio que migraste.

3.2 Importar la base de datos

En DirectAdmin, como el usuario del destino, ve a "Base de Datos MySQL" y crea una nueva base de datos con el mismo nombre que la original (o el que prefieras). Anota el nombre de la base de datos, el usuario y la contraseña.

Ahora, desde la terminal, importa el backup:

mysql -u usuario_bd_destino -p nombre_bd_destino < /home/usuario_destino/backup_bd.sql

Ingresa la contraseña cuando la pida.

3.3 Ajustar la configuración del sitio

Si tu sitio usa un CMS como WordPress, es probable que tengas que actualizar las credenciales de la base de datos en el archivo de configuración (por ejemplo, wp-config.php). Edita el archivo:

nano /home/usuario_destino/domains/midominio.com/public_html/wp-config.php

Y cambia los valores de DB_NAME, DB_USER, DB_PASSWORD y DB_HOST por los nuevos.

[WARNING] Si no actualizas estos datos, el sitio no podrá conectar con la base de datos y mostrará un error de conexión.

Paso 4: Probar el sitio y corregir errores comunes

Antes de redirigir el tráfico, es fundamental probar que todo funcione en el nuevo servidor.

4.1 Verificar el acceso al sitio

Puedes modificar temporalmente el archivo /etc/hosts de tu computadora para apuntar el dominio a la IP del nuevo servidor. En Linux o Mac:

sudo nano /etc/hosts

Añade una línea como:

ip_destino midominio.com www.midominio.com

Luego, abre el navegador y visita http://midominio.com. Deberías ver el sitio funcionando.

4.2 Errores frecuentes y soluciones

  • Error 500 (Internal Server Error): Suele deberse a permisos incorrectos. Ejecuta:
    chmod -R 755 /home/usuario_destino/domains/midominio.com/public_html/
    chmod 644 /home/usuario_destino/domains/midominio.com/public_html/wp-config.php
    
  • Error de conexión a la base de datos: Revisa que las credenciales en el archivo de configuración sean correctas y que la base de datos exista.
  • Página en blanco: Activa la visualización de errores en PHP temporalmente editando el archivo php.ini o agregando al inicio del script:
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
    

Paso 5: Redirigir el tráfico y finalizar la migración

Una vez que todo funciona, es hora de apuntar el dominio al nuevo servidor. Esto se hace modificando los registros DNS de tu dominio.

5.1 Cambiar los registros DNS

Accede al panel de control de tu proveedor de dominios (donde compraste el dominio) y cambia los registros A (y AAAA si usas IPv6) para que apunten a la IP del servidor de destino. Si usas servicios como Cloudflare, actualiza la IP allí.

5.2 Esperar la propagación

Los cambios DNS pueden tardar entre 1 y 48 horas en propagarse globalmente. Durante ese tiempo, algunos usuarios verán el sitio antiguo y otros el nuevo. No te preocupes, es normal.

5.3 Verificar desde diferentes ubicaciones

Usa herramientas como whatsmydns.net para comprobar que la IP del dominio ya apunte al nuevo servidor desde distintas regiones.

[TIP] Si quieres que la migración sea casi instantánea, puedes reducir el TTL (Time To Live) de los registros DNS a 300 segundos (5 minutos) antes de hacer el cambio. Así, la propagación será más rápida.

FAQ: Preguntas frecuentes sobre migración en DirectAdmin

¿Puedo migrar sitios desde otros paneles como cPanel o Syspanel?

Sí, el proceso es similar, aunque las rutas de archivos pueden variar. Por ejemplo, si vienes de Syspanel (anteriormente HestiaCP, accesible por el puerto 2106), los archivos del sitio suelen estar en /home/usuario/web/dominio/public_html/. Solo necesitas adaptar las rutas en el comando rsync.

¿Qué hago si el sitio usa SSL?

Después de la migración, puedes generar un nuevo certificado SSL desde DirectAdmin (opción "SSL Certificates"). Si usabas Let's Encrypt, DirectAdmin lo renovará automáticamente si configuras el dominio correctamente.

¿Pierdo el correo electrónico al migrar?

Depende. Si usas cuentas de correo en el servidor, deberías migrar también los buzones. En DirectAdmin, puedes exportar e importar cuentas de correo desde "Correo" > "Gestión de Cuentas". Sin embargo, lo más recomendable es usar servicios externos como Google Workspace o Microsoft 365 para evitar complicaciones.

¿Es necesario detener el sitio durante la migración?

No necesariamente. Puedes hacer la migración en caliente (con el sitio funcionando) siempre que no haya cambios constantes en la base de datos. Si el sitio es muy dinámico (como una tienda en línea), programa la migración en horas de bajo tráfico y, si es posible, pon el sitio en modo mantenimiento.

Conclusión

Migrar sitios web en DirectAdmin es un proceso que, con esta guía paso a paso, se vuelve sencillo y seguro. Recuerda siempre hacer copias de seguridad, verificar cada paso y probar el sitio antes de redirigir el tráfico. Como SysAdmin en Linux, dominar esta tarea te ahorrará tiempo y dolores de cabeza.

Si tienes dudas o encuentras algún error, no dudes en consultar la documentación oficial de DirectAdmin o buscar ayuda en foros especializados. ¡Buena suerte con tu migración!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel