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

Cómo migrar un sitio WordPress de cPanel a DirectAdmin (Guía completa)

Actualizado el 10 de marzo de 2026

Mudarse de casa es estresante, pero mudar un sitio web puede ser un dolor de cabeza si no se hace con calma. Si estás leyendo esto, probablemente estás en esa situación: tienes tu WordPress funcionando en un servidor con cPanel y necesitas (o te han obligado a) moverlo a un servidor con DirectAdmin. No te preocupes, respira. Esta guía está pensada para que lo hagas paso a paso, sin perder datos y sin volverte loco en el intento.

Vamos a desglosar el proceso completo de migración sitio web entre estos dos paneles de control. Aunque a simple vista parezcan diferentes, al final ambos gestionan lo mismo: archivos, bases de datos y correos. La clave está en saber dónde está cada cosa y cómo transportarla de forma segura.

[INFO] Esta guía asume que tienes acceso de administrador tanto a tu cPanel de origen como a tu DirectAdmin de destino. Si no tienes acceso SSH, también te doy alternativas básicas con el administrador de archivos.


Paso 0: Preparación y Planificación (El 50% del éxito)

Antes de tocar un solo archivo, necesitas tener las cosas claras. No podemos empezar a mover muebles sin medir la puerta, ¿verdad?

Requisitos previos

  1. Credenciales de acceso: Ten a mano el usuario y contraseña de tu cPanel y de tu nuevo DirectAdmin.
  2. Acceso a PHPMyAdmin: Necesitarás acceder a las bases de datos desde ambos paneles. Esto es imprescindible para exportar e importar tu contenido.
  3. Un cliente FTP o el administrador de archivos: Aunque no lo creas, con el administrador de archivos de ambos paneles es suficiente, pero un cliente como FileZilla te facilitará la vida si el sitio es muy grande.
  4. Dominio apuntando: Decide si vas a cambiar los DNS del dominio al nuevo servidor o si vas a editar el archivo hosts de tu ordenador para probar antes de cortar el cable. Te recomiendo lo segundo para evitar tiempos de inactividad largos.

¿Qué vamos a necesitar mover?

Para una migrar WordPress completa, necesitamos tres cosas:

  • Los archivos del sitio: Todo el contenido de la carpeta public_html (o la carpeta donde esté instalado WordPress).
  • La base de datos: Donde se guardan tus entradas, páginas, comentarios y configuraciones.
  • Los archivos de configuración: Principalmente el wp-config.php, que conecta la base de datos con los archivos.

[WARNING] No empieces la migración sin hacer una copia de seguridad completa en local (en tu ordenador). Si algo sale mal, necesitas poder volver atrás sin depender de tu antiguo servidor.


Paso 1: Exportar la Base de Datos desde cPanel

Este es el corazón de tu web. Si pierdes esto, pierdes el contenido. Vamos a hacerlo con calma.

  1. Entra a cPanel: Accede con tus credenciales y busca la sección "Bases de Datos" y haz clic en "phpMyAdmin".
  2. Selecciona tu base de datos: En el panel izquierdo, verás una lista de bases de datos. Haz clic en la que corresponde a tu WordPress (suele tener un prefijo como usuario_wordpress).
  3. Exportar: En el menú superior, haz clic en la pestaña "Exportar". Te preguntará el método de exportación. Elige "Personalizado" si quieres opciones avanzadas, o simplemente "Rápido" si no tienes prisa.
  4. Formato: Asegúrate de que el formato sea SQL. En las opciones de "Personalizado", busca la casilla que dice "Agregar DROP TABLE / VIEW / PROCEDURE / FUNCTION" y actívala. Esto hará que si hay tablas existentes en el destino, se borren y se reemplacen sin errores.
  5. Descargar: Haz clic en "Continuar" o "Exportar" y se descargará un archivo .sql. Guárdalo en una carpeta segura en tu ordenador.

Paso 2: Exportar los Archivos del Sitio desde cPanel

Ahora vamos a por la carpeta que contiene el código de WordPress, plugins, temas y subidas.

  1. Vuelve al cPanel: Busca la sección "Archivos" y abre el "Administrador de Archivos".
  2. Navega a public_html: En la columna derecha, entra en la carpeta public_html. Si tienes WordPress instalado en una subcarpeta (ej: public_html/blog), entra en esa.
  3. Selecciona todo: En la parte superior, verás un icono de selección múltiple o puedes usar Ctrl+A (Cmd+A en Mac) para seleccionar todos los archivos y carpetas.
  4. Comprimir: Con todos los archivos seleccionados, haz clic derecho y elige la opción "Comprimir". En la ventana que aparece, selecciona "Zip Archive" y haz clic en "Crear archivo". El sistema creará un archivo .zip dentro de la misma carpeta.
  5. Descargar: Una vez creado el zip, selecciónalo y haz clic en "Descargar". Se descargará a tu ordenador.

[TIP] Si el sitio pesa más de 500 MB, el administrador de archivos puede dar problemas de tiempo de espera. En ese caso, es mejor que uses un cliente FTP (FileZilla) y descargues la carpeta public_html directamente sin comprimir. Es más lento pero más fiable.


Paso 3: Importar la Base de Datos en DirectAdmin

Ahora viene la parte de construir la nueva casa. Primero la estructura (base de datos), luego los muebles (archivos).

3.1 Crear la Base de Datos y el Usuario

DirectAdmin es un poco más meticuloso con esto. Necesitamos crear una base de datos vacía y un usuario con permisos.

  1. Entra a DirectAdmin: Accede al panel con tus credenciales.
  2. Busca "Administración de MySQL": Dependiendo de la versión, esta opción puede estar en la pantalla principal o en el menú "Cuenta" -> "Administración de MySQL".
  3. Crear nueva base de datos: Verás un formulario para "Crear Nueva Base de Datos". Elige un nombre, por ejemplo wordpress_db. DirectAdmin le añadirá automáticamente un prefijo con tu nombre de usuario (ej: usuario_wordpress_db).
  4. Crear usuario: En el mismo formulario, te pedirá un "Usuario de la Base de Datos" y una "Contraseña". Crea uno, por ejemplo wpuser, y pon una contraseña segura. Guárdala, la necesitarás en el paso 5.
  5. Asignar permisos: Después de crear la base y el usuario, te aparecerá una tabla para asignar "Todos los privilegios" al usuario sobre esa base de datos. Marca la casilla "ALL PRIVILEGES" y guarda los cambios.

3.2 Importar el Archivo SQL

  1. Entra a phpMyAdmin: Desde DirectAdmin, busca el icono de "phpMyAdmin" (normalmente está en la sección de bases de datos o en el menú de herramientas avanzadas).
  2. Selecciona la base de datos: En el panel izquierdo, haz clic en el nombre de la base de datos que acabas de crear (ej: usuario_wordpress_db).
  3. Importar: Haz clic en la pestaña "Importar" en el menú superior.
  4. Selecciona el archivo: Haz clic en "Elegir archivo" y busca el archivo .sql que descargaste del cPanel.
  5. Ejecutar: Haz clic en "Continuar". Si el archivo es muy grande, puede que necesites subirlo por FTP a una carpeta temporal e importarlo desde ahí, pero en la mayoría de los casos esto funciona bien.

Paso 4: Subir los Archivos a DirectAdmin

Ahora vamos a llenar la casa con los muebles (los archivos de WordPress).

  1. Accede al Administrador de Archivos de DirectAdmin: En el panel principal, busca el icono "Administrador de Archivos".
  2. Navega a domains: La estructura de archivos en DirectAdmin es diferente a cPanel. Los sitios web no están en public_html directamente, sino en domains/tudominio.com/public_html.
  3. Sube el archivo Zip: Entra en la carpeta public_html de tu dominio. Haz clic en el botón "Subir" (icono de flecha hacia arriba) y selecciona el archivo .zip que descargaste del cPanel.
  4. Extraer el archivo: Una vez subido, verás el archivo .zip en la lista. Haz clic derecho sobre él y selecciona "Extraer". Se descomprimirá en la misma carpeta.
  5. Limpiar: Después de extraer, elimina el archivo .zip del servidor para mantener todo ordenado.

[WARNING] Si tu WordPress estaba en una subcarpeta del cPanel (ej: public_html/blog), asegúrate de que los archivos extraídos estén dentro de la carpeta correspondiente en DirectAdmin (domains/tudominio.com/public_html/blog). Si no, la web no cargará.


Paso 5: Ajustar la Configuración (wp-config.php)

Este es el paso más delicado y el que más errores causa. WordPress necesita saber dónde está su nueva base de datos.

  1. Encuentra el archivo: En el Administrador de Archivos de DirectAdmin, navega hasta la carpeta raíz de tu WordPress (donde están los archivos extraídos) y busca el archivo wp-config.php.

  2. Editar: Haz clic derecho sobre él y selecciona "Editar" (o cópialo a tu ordenador, edítalo con un bloc de notas y vuelve a subirlo).

  3. Modifica las constantes: Busca las siguientes líneas y cámbialas por los datos de tu nueva base de datos de DirectAdmin:

    // ** Configuración de la base de datos ** //
    define( 'DB_NAME', 'usuario_wordpress_db' ); // El nombre de la base que creaste
    define( 'DB_USER', 'usuario_wpuser' ); // El usuario que creaste
    define( 'DB_PASSWORD', 'la_contraseña_que_pusiste' ); // La contraseña que pusiste
    define( 'DB_HOST', 'localhost' ); // Normalmente 'localhost' funciona, a veces es '127.0.0.1'
    
  4. Guardar: Guarda los cambios y cierra el editor.

[INFO] Si tu web no carga después de esto, revisa que el DB_HOST sea correcto. En DirectAdmin, a veces el host de la base de datos es localhost o 127.0.0.1. No suele ser un host remoto a menos que uses un servicio externo.


Paso 6: URLs y Ajustes Finales (El famoso "Cambio de URL")

Si tu dominio sigue apuntando al servidor antiguo, no verás los cambios aún. Pero es muy probable que las URLs internas de tu web sigan siendo las antiguas (ej: http://tudominio.com), lo cual es correcto.

Sin embargo, si estás probando con una IP o un dominio temporal, necesitarás buscar y reemplazar las URLs en la base de datos.

  1. Entra a phpMyAdmin en DirectAdmin.

  2. Selecciona tu base de datos importada.

  3. Ve a la tabla wp_options: Haz clic en el icono "SQL" (o en "Buscar" si tu versión lo permite).

  4. Ejecuta la consulta: Para cambiar todas las URLs de golpe, ejecuta la siguiente consulta SQL (reemplaza http://olddomain.com por tu dominio antiguo y http://newdomain.com por el nuevo):

    UPDATE wp_options SET option_value = replace(option_value, 'http://olddomain.com', 'http://newdomain.com') WHERE option_name = 'siteurl' OR option_name = 'home';
    

    También necesitas actualizar las URLs dentro de tus entradas y guías (tablas wp_posts y wp_postmeta):

    UPDATE wp_posts SET guid = replace(guid, 'http://olddomain.com','http://newdomain.com');
    UPDATE wp_posts SET post_content = replace(post_content, 'http://olddomain.com', 'http://newdomain.com');
    UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://olddomain.com','http://newdomain.com');
    

[TIP] Si no te sientes cómodo con SQL, busca en Google "Better Search Replace" y súbelo como plugin. Actívalo, introduce las URLs antiguas y nuevas, elige la tabla que quieras (o todas) y haz clic en "Dry Run" primero para ver cuántos cambios hará. Es la opción más segura para novatos.


Paso 7: Actualizar los DNS y Probar

Este es el momento de la verdad. Si has estado probando con el archivo hosts, este es el momento de eliminarlo y cambiar los DNS reales de tu dominio.

  1. Cambia los Nameservers: Ve a tu registrador de dominios (donde compraste el dominio) y cambia los nameservers para que apunten a los de tu nuevo servidor (normalmente son ns1.tuservidor.com y ns2.tuservidor.com).
  2. Espera la propagación: Esto puede tardar de 1 a 48 horas.
  3. Prueba tu web: Una vez que el dominio apunte al nuevo servidor, visita tu web y verifica que todo funcione: la portada, las entradas, las imágenes, el panel de administración (/wp-admin), etc.
  4. Prueba el panel de administración: Intenta iniciar sesión en WordPress. Si te da error de conexión a la base de datos, revisa el paso 5. Si te da error de "cookies" o "loop", suele ser un problema de caché del navegador o de las URLs en la base de datos (paso 6).

Errores Comunes y Soluciones (FAQ Rápida)

  • Error: "Error establishing a database connection" (Error al establecer conexión con la base de datos): Esto casi siempre es un problema con los datos en wp-config.php. Revisa el nombre de la base, el usuario y la contraseña. Asegúrate de que no hay espacios y de que el host es correcto.
  • La web carga pero sin estilos (solo texto): Esto es un problema con las URLs de los archivos estáticos. Ejecuta la consulta SQL de wp_posts y wp_postmeta de nuevo, o usa el plugin "Better Search Replace".
  • No puedo acceder al panel de administración: Si ves un bucle de redirección o un error de "demasiadas redirecciones", prueba a limpiar la caché del navegador. Si sigue, revisa que las URLs en wp_options no tengan una barra al final (ej: http://tudominio.com no es lo mismo que http://tudominio.com/).
  • El sitio está lento: Esto puede ser por la caché de WordPress. Instala un plugin de caché (como WP Super Cache o W3 Total Cache) y configúralo. También verifica que el PHP en DirectAdmin esté configurado con una versión reciente (PHP 7.4+).

[WARNING] No elimines el sitio de cPanel hasta que estés 100% seguro de que el nuevo sitio funciona perfectamente. Mantén ambas versiones durante al menos una semana para poder comparar y solucionar cualquier problema con calma.


Conclusión

Migrar de cPanel a DirectAdmin puede parecer un reto, pero con esta guía paso a paso, es un proceso muy manejable. La clave está en la organización: exportar bien, importar bien y ajustar la configuración con precisión. Ahora ya sabes que no es magia, es solo cuestión de seguir los pasos.

Si te ha resultado útil, compártelo con otros usuarios que estén pasando por el mismo proceso. Y recuerda, ante la duda, siempre puedes preguntar a tu proveedor de hosting; suelen tener guías específicas para este tipo de **m

¿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