Cómo migrar WordPress a un nuevo hosting usando cPanel (backup y restauración)
¿Tu web va lenta? ¿El soporte de tu hosting actual no te responde? Cambiar de proveedor puede ser la solución, pero el proceso de migrar WordPress hosting a menudo suena a algo complicado y exclusivo para programadores.
La buena noticia es que no lo es. Si tu hosting actual o el nuevo usan cPanel (el panel de control más común del mundo), tienes la tarea casi resuelta.
En esta guía completa, te voy a enseñar el método más seguro y sencillo para hacer una migración WordPress cPanel sin perder ni una sola visita, comentario o venta. Olvídate de los plugins de migración que a veces fallan a mitad de camino; vamos a hacerlo de forma manual y fiable, paso a paso.
Vamos a ello.
Antes de Empezar: Qué Necesitas y Por Qué Funciona Este Método
Este método se basa en una regla de oro: una web de WordPress se compone de dos cosas:
-
Los Archivos: El núcleo de WordPress, tus temas, tus plugins y, sobre todo, las imágenes que subes a tu biblioteca de medios.
-
La Base de Datos (MySQL): Aquí es donde viven tus entradas, páginas, comentarios, configuración del tema y ajustes de los plugins.
Si copiamos ambos elementos del hosting antiguo y los pegamos en el nuevo, es como si hubiéramos teletransportado la web. No importa si el nuevo servidor tiene una IP distinta o está en otro país.
Para que todo vaya sobre ruedas, asegúrate de tener:
- Acceso al cPanel antiguo (para hacer las copias).
- Acceso al cPanel nuevo (para restaurar).
- Las credenciales de acceso a tu cuenta de FTP (normalmente las encuentras en tu cPanel o te las dio tu proveedor).
- Unas 2 horas de tiempo libre y paciencia. No es difícil, pero hay que seguir el orden.
[INFO] Si tu hosting nuevo usa un panel distinto como Syspanel (antes conocido como HestiaCP), el proceso es idéntico. Solo cambia la URL de acceso: en lugar de tudominio.com/cPanel, tendrás que entrar por tudominio.com:2106. Una vez dentro, las herramientas de "Backup" y "Base de Datos" están en el menú lateral.
Fase 1: Preparando el Terreno en tu Nuevo Hosting
Antes de tocar nada en el hosting antiguo, vamos a preparar la "casa nueva". Esto es crucial para evitar conflictos de nombres o de versiones.
1.1 Crea una Base de Datos Vacía y un Usuario
WordPress necesita una base de datos para funcionar. Vamos a crearla en el cPanel nuevo.
- Entra en tu cPanel nuevo y busca la sección "Bases de Datos MySQL" (o "MySQL Databases").
- En el campo "Crear nueva base de datos", escribe un nombre. Normalmente se añade automáticamente un prefijo con el nombre de tu cuenta (ej:
miusuario_wpdb). Anota el nombre completo. - Haz clic en "Crear base de datos".
- Ahora, baja un poco hasta la sección "Crear usuario de MySQL".
- Inventa un nombre de usuario (ej:
miusuario_wpuser) y una contraseña segura. Anota ambos. - Haz clic en "Crear usuario".
1.2 Añade el Usuario a la Base de Datos
Ahora tenemos la base de datos y el usuario por separado. Hay que unirlos.
- Ve a la sección "Añadir usuario a base de datos".
- Selecciona el usuario que acabas de crear y la base de datos que acabas de crear.
- Haz clic en "Añadir".
- Se abrirá una nueva pantalla con una lista de privilegios (PRIVILEGIOS). Marca la casilla "TODOS LOS PRIVILEGIOS" (o "ALL PRIVILEGIES") para asegurarte de que WordPress puede hacer todo (leer, escribir, borrar).
- Haz clic en "Hacer cambios".
[TIP] Anota estos tres datos en un bloc de notas, los necesitarás en la Fase 4: Nombre de la BD, Usuario de la BD y Contraseña.
1.3 Crea una Carpeta Temporal (Opcional pero Recomendado)
Si tu dominio principal (ej: tudominio.com) ya está apuntando al nuevo hosting, puedes saltarte este paso. Si aún no lo has cambiado (los DNS), te recomiendo crear una carpeta temporal llamada temp dentro de public_html para no liarte. Pero para esta guía, asumiremos que vas a restaurar directamente en la raíz (public_html).
Fase 2: Haciendo el Backup en tu Hosting Antiguo
Esta es la parte más importante. Vamos a empaquetar tu web tal y como está ahora mismo.
2.1 Exportar la Base de Datos (phpMyAdmin)
La base de datos es el cerebro de tu web. Vamos a hacer una copia de seguridad de ella.
- Entra en el cPanel del hosting antiguo.
- Busca la herramienta "phpMyAdmin" (suele estar dentro de la sección "Bases de Datos").
- En el panel de la izquierda, verás una lista de bases de datos. Haz clic en la que usa tu WordPress (si no sabes cuál es, revisa el archivo
wp-config.phpde tu web, pero eso lo veremos luego). - Una vez dentro, ve a la pestaña superior llamada "Exportar".
- Deja seleccionado el método "Rápido" y el formato "SQL".
- Haz clic en el botón "Continuar" o "Exportar". Se descargará un archivo con extensión
.sql. Guárdalo en tu ordenador.
[WARNING] No cierres esta pestaña aún. Si tu web tiene muchas visitas, los datos pueden cambiar. Idealmente, pon tu web en "Modo Mantenimiento" o desactiva la caché temporalmente para congelar los datos. Si no sabes cómo, no te preocupes, la mayoría de los sitios pequeños no tienen problema.
2.2 Comprimir los Archivos del Sitio (File Manager)
Ahora vamos a empaquetar todos los archivos de tu web (imágenes, código, plugins, etc.).
- En el cPanel antiguo, busca la herramienta "Administrador de Archivos" (o "File Manager").
- Entra en la carpeta
public_html. - Verás todos los archivos de tu web (carpetas como
wp-admin,wp-content, y archivos comoindex.php,wp-config.php). - Selecciona todos los archivos y carpetas. Puedes usar el botón "Seleccionar todo" en la barra superior o presionar
Ctrl + A(Cmd + A en Mac) en tu teclado. - Con todo seleccionado, haz clic derecho y elige la opción "Comprimir" o "Compress".
- Elige el tipo de compresión "Zip Archive".
- Dale un nombre como
backup-web.zipy haz clic en "Comprimir archivos".
El sistema empezará a comprimir. Cuando termine, verás el archivo backup-web.zip en la misma carpeta.
2.3 Descargar el Archivo Comprimido
- Haz clic derecho sobre el archivo
backup-web.zip. - Selecciona "Descargar".
- El navegador comenzará a descargar el archivo a tu ordenador. Dependiendo del tamaño de tu web, puede tardar unos minutos.
[INFO] Ya tienes las dos piezas del puzzle: el archivo .sql (base de datos) y el archivo .zip (archivos). Guárdalos en una carpeta segura.
Fase 3: Subiendo los Archivos al Nuevo Hosting
Hora de mudarse. Vamos a llevar tus pertenencias a la nueva casa.
3.1 Subir y Extraer el Archivo ZIP
- Entra en el cPanel del hosting nuevo.
- Abre el "Administrador de Archivos".
- Navega a la carpeta
public_html. - Haz clic en el botón "Subir" (arriba a la derecha) y arrastra el archivo
backup-web.zipdesde tu ordenador. Espera a que termine la subida del 100%. - Una vez subido, verás el archivo
backup-web.zipen la lista. Haz clic derecho sobre él y selecciona "Extraer" (o "Extract"). - En la ventana que aparece, deja la ruta como está (
/home/usuario/public_html) y haz clic en "Extraer archivos".
El sistema extraerá todo el contenido. Verás aparecer las carpetas wp-admin, wp-content, etc.
[WARNING] Si al extraer te pregunta si quieres "Sobrescribir" archivos existentes (como index.html), elige "Sobrescribir" o "Reemplazar". Si no, puede haber conflictos.
3.2 Eliminar el Archivo ZIP
Una vez extraído, ya no necesitas el archivo comprimido en el servidor. Es una buena práctica borrarlo para mantener todo limpio. Haz clic derecho sobre backup-web.zip y selecciona "Eliminar".
Fase 4: La Conexión Mágica (Configurar wp-config.php)
Ahora viene el paso clave. WordPress necesita saber que su base de datos ya no es la de antes, sino la nueva que creaste en la Fase 1.
- En el Administrador de Archivos del hosting nuevo, busca el archivo llamado
wp-config.php. - Haz clic derecho sobre él y selecciona "Editar" (o "Edit"). Se abrirá un editor de texto.
- Busca las siguientes líneas (suelen estar al principio del archivo):
define( 'DB_NAME', 'nombre_base_datos_antigua' );
define( 'DB_USER', 'usuario_base_datos_antigua' );
define( 'DB_PASSWORD', 'contraseña_base_datos_antigua' );
-
Reemplaza esos tres valores con los que anotaste en la Fase 1.2:
DB_NAME: Pon el nombre de la base de datos nueva.DB_USER: Pon el usuario de la base de datos nueva.DB_PASSWORD: Pon la contraseña que elegiste para ese usuario.
-
Guarda los cambios (botón "Guardar cambios" arriba a la derecha) y cierra el editor.
[TIP] No toques nada más en ese archivo. Si tu web usaba una tabla de base de datos con un prefijo distinto al estándar (wp_), también deberías cambiar la línea $table_prefix = 'wp_'; a su valor original. Pero esto es poco común.
Fase 5: Restaurando la Base de Datos en el Nuevo Hosting
Ya tenemos los archivos en su sitio y conectados a la nueva base de datos (que aún está vacía). Ahora vamos a meterle el cerebro.
- En el cPanel nuevo, abre "phpMyAdmin".
- En el panel izquierdo, haz clic en la nueva base de datos que creaste (la que está vacía).
- Ve a la pestaña "Importar".
- Haz clic en el botón "Elegir archivo" y selecciona el archivo
.sqlque descargaste en la Fase 2.1. - Deja el resto de opciones por defecto y haz clic en "Continuar" o "Importar" al final de la página.
Espera a que la barra de progreso llegue al 100%. Si no te da error, ¡enhorabuena! La base de datos está copiada.
[WARNING] Si el archivo .sql es muy grande (más de 20MB), es posible que la importación falle por un límite del servidor. En ese caso, contacta con tu nuevo proveedor de hosting para que aumente el límite o te ayude con la importación.
Fase 6: Actualizar URLs y Solucionar Problemas Comunes
Este es el paso que casi nadie menciona y que causa el 90% de los dolores de cabeza. Si has cambiado de dominio o de subdominio, las URLs en la base de datos son antiguas. Pero incluso si usas el mismo dominio, hay que "limpiar" la caché.
6.1 El Problema de las URLs
Imagínate que tu web usa www.tudominio.com. En la base de datos, hay miles de referencias a esa dirección. Si ahora tu web se sirve desde tudominio.com (sin www) o desde una IP temporal, los enlaces internos se romperán.
Para arreglarlo, vamos a usar un pequeño truco con phpMyAdmin.
- En phpMyAdmin del hosting nuevo, haz clic en tu base de datos (la que acabas de importar).
- Ve a la pestaña "SQL".
- Pega la siguiente consulta SQL (reemplaza
tudominio.compor tu dominio real):
UPDATE wp_options SET option_value = 'http://tudominio.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'http://tudominio.com' WHERE option_name = 'home';
- Haz clic en "Continuar".
Esto actualiza las dos opciones principales que usa WordPress para saber dónde está alojado.
6.2 Ajustar la IP en el Archivo de Hosts (Solo para Pruebas)
Si no has cambiado los DNS de tu dominio y quieres ver la web antes de que "salte" al nuevo hosting, puedes modificar el archivo hosts de tu ordenador. Es un poco técnico, pero te permite previsualizar. Si no te apetece, salta este paso y simplemente espera a que los DNS se propaguen (puede tardar de 1 a 48 horas).
6.3 Limpiar la Caché
Tu web y tu navegador guardan caché. Es normal que al principio veas la web "rota" o la versión antigua.
- Borra la caché de tu navegador o usa una ventana de incógnito.
- Si usas un plugin de caché (como W3 Total Cache o WP Rocket), ve a
wp-admin(si puedes entrar) y borra la caché desde el plugin.
Fase 7: Verificación Final y Cambio de DNS
Ya casi está. Vamos a asegurarnos de que todo funciona.
7.1 Comprobaciones Rápidas
- Entra en tu dominio. ¿Carga la web?
- Entra en
tudominio.com/wp-admin. ¿Puedes iniciar sesión? - Revisa una entrada antigua. ¿Se ven las imágenes? ¿Los enlaces funcionan?
- Prueba a entrar en la tienda (si tienes WooCommerce) y realiza una compra de prueba.
7.2 Cambiar los Name Servers (DNS)
Si tu dominio apuntaba al hosting antiguo, ahora debes cambiarlo.
- Ve a tu registrador de dominios (donde compraste el dominio, ej: GoDaddy, Namecheap, etc.).
- Busca la sección de "Name Servers" o "DNS".
- Reemplaza los nameservers antiguos por los nameservers del nuevo hosting. Los encontrarás en el correo de bienvenida de tu nuevo proveedor o en su panel de control.
- Guarda los cambios.
La propagación de DNS puede tardar entre 1 y 48 horas. Durante ese tiempo, algunos usuarios verán la web antigua y otros la nueva. Es normal.
[TIP] No canceles tu plan de hosting antiguo hasta que hayan pasado al menos 48 horas desde el cambio de DNS y hayas verificado que todo funciona perfectamente.
Preguntas Frecuentes (FAQ)
¿Puedo usar un plugin para migrar WordPress hosting?
Sí, plugins como All-in-One WP Migration o Duplicator son muy populares. Sin embargo, a veces fallan con webs grandes o con configuraciones de servidor específicas. El método manual con cPanel es
