Cómo transferir WordPress de un servidor a otro con cPanel
Mover tu sitio WordPress de un hosting a otro puede parecer una tarea de enormes proporciones, especialmente si es la primera vez que lo haces. Sin embargo, con las herramientas adecuadas y una guía clara, es un proceso mucho más sencillo de lo que imaginas. En este artículo, te voy a explicar paso a paso cómo transferir WordPress de un servidor a otro utilizando cPanel, tanto en el servidor de origen como en el de destino.
Vamos a desglosar el proceso en dos grandes fases: la exportación (desde el servidor antiguo) y la importación (en el servidor nuevo). No necesitas ser un experto en Linux ni un administrador de sistemas; solo necesitas seguir las instrucciones al pie de la letra y tener paciencia.
¿Qué necesitas antes de empezar?
Antes de lanzarnos a la acción, asegúrate de tener a mano los siguientes datos. Esto te ahorrará tiempo y dolores de cabeza:
- Acceso a cPanel del servidor antiguo: Necesitas las credenciales de usuario y contraseña, o al menos acceso a un usuario con permisos de administrador.
- Acceso a cPanel del servidor nuevo: Lo mismo que el punto anterior, pero para el destino.
- Acceso FTP o al Administrador de Archivos: Aunque cPanel lo incluye, es bueno saber que lo usarás.
- Credenciales de la base de datos: Usuario, contraseña y nombre de la base de datos. Las encontrarás en el archivo
wp-config.phpde tu instalación. - Una copia de seguridad manual (opcional pero recomendada): Si algo sale mal, podrás restaurar todo desde cero.
[WARNING] Nunca subestimes el poder de una copia de seguridad. Si no tienes una, hazla antes de tocar nada. Un pequeño error puede dejar tu web caída.
Fase 1: Preparar el servidor de origen
El objetivo de esta fase es empaquetar tu sitio web (archivos y base de datos) para poder "mudarlo" al nuevo hogar. Lo haremos en dos partes: primero los archivos y luego la base de datos.
Paso 1: Exportar los archivos de WordPress desde cPanel
Para transferir wordpress correctamente, necesitas todos los archivos de tu instalación. Esto incluye el núcleo de WordPress, tus temas, plugins y, muy importante, las imágenes y medios subidos.
- Accede a tu cPanel del servidor antiguo.
- Busca la sección Archivos y haz clic en Administrador de Archivos.
- Navega hasta la carpeta
public_html. Si tu WordPress está instalado en una subcarpeta (por ejemplo,public_html/miweb), navega hasta esa carpeta. - Selecciona todos los archivos y carpetas dentro de
public_html(o de la carpeta de tu instalación). Puedes hacer clic en "Seleccionar todo" en la barra superior. - Con los archivos seleccionados, haz clic en el botón Comprimir en la barra superior.
- Elige el tipo de compresión Zip y dale un nombre claro, como
wordpress_backup.zip. Asegúrate de que la opción "Archivos" esté marcada para comprimir solo los archivos seleccionados. - Haz clic en Comprimir Archivos. cPanel creará el archivo ZIP en la misma carpeta.
- Una vez creado, selecciona el archivo ZIP y haz clic en Descargar. Guárdalo en tu computadora.
[TIP] Si tu sitio es muy grande (más de 1GB), puede ser más eficiente usar un cliente FTP como FileZilla para descargar los archivos directamente, en lugar de comprimirlos y descargarlos. Pero para la mayoría de los casos, el método del ZIP es perfecto.
Paso 2: Exportar la base de datos de WordPress
Ahora vamos a por la parte más "delicada": la base de datos. Aquí se guardan tus entradas, páginas, comentarios y configuraciones.
- En el mismo cPanel, busca la sección Bases de Datos y haz clic en phpMyAdmin.
- En el panel de la izquierda, verás una lista de tus bases de datos. Haz clic en el nombre de la base de datos que usa tu WordPress (lo puedes confirmar en el archivo
wp-config.php). - Una vez dentro, verás las tablas de tu base de datos. Haz clic en la pestaña Exportar en la parte superior.
- En la mayoría de las versiones de phpMyAdmin, verás dos métodos: "Rápido" y "Personalizado". Te recomiendo elegir Personalizado para tener más control.
- En la sección "Formato", asegúrate de que esté seleccionado SQL.
- Deja las demás opciones por defecto, pero asegúrate de que la opción "Agregar DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT" esté marcada. Esto sobrescribirá cualquier tabla existente en el destino si es necesario.
- Haz clic en el botón Exportar en la parte inferior. Tu navegador descargará un archivo con extensión
.sql. Guárdalo en un lugar seguro.
[INFO] La opción "Agregar DROP TABLE" es crucial para una cpanel migracion limpia. Si no la marcas, podrías tener conflictos si la base de datos de destino ya tiene tablas con el mismo nombre.
Fase 2: Importar en el servidor de destino
Ahora viene la parte divertida: darle vida a tu web en el nuevo servidor. Primero crearemos la base de datos y luego subiremos los archivos.
Paso 3: Crear una nueva base de datos en el cPanel de destino
Tu WordPress necesita una base de datos nueva y vacía en el servidor de destino.
- Accede al cPanel de tu nuevo hosting.
- Busca la sección Bases de Datos y haz clic en Bases de Datos MySQL.
- En el campo "Nueva base de datos", escribe un nombre (por ejemplo,
nueva_wp_db). cPanel añadirá automáticamente un prefijo con tu nombre de usuario (ej:usuario_nueva_wp_db). Anota el nombre completo. - Haz clic en Crear base de datos.
- Ahora, en la misma página, busca la sección Agregar nuevo usuario. Crea un usuario y una contraseña segura. Anota estos datos también.
- Una vez creado el usuario, ve a la sección Agregar usuario a la base de datos.
- Selecciona el usuario y la base de datos que acabas de crear, y haz clic en Agregar.
- Se abrirá una ventana de privilegios. Marca la casilla TODOS LOS PRIVILEGIOS y haz clic en Hacer cambios.
[WARNING] Escribe los nombres de la base de datos y del usuario exactamente como aparecen en cPanel, incluyendo el prefijo. Un error tipográfico aquí te dará dolores de cabeza más adelante.
Paso 4: Importar la base de datos en el destino
Ahora subiremos el archivo .sql que descargaste antes.
- En el cPanel de destino, busca y haz clic en phpMyAdmin.
- Selecciona la base de datos que acabas de crear (en el panel de la izquierda).
- Haz clic en la pestaña Importar en la parte superior.
- Haz clic en Elegir archivo y selecciona el archivo
.sqlque descargaste del servidor antiguo. - Deja el formato como SQL y haz clic en el botón Continuar o Importar.
- phpMyAdmin procesará el archivo. Si es muy grande, puede tardar unos minutos. Verás un mensaje de éxito al final.
[TIP] Si tu base de datos es enorme (más de 50MB), es posible que el servidor tenga un límite de subida. En ese caso, puedes usar la herramienta "Importar" de cPanel (sección "Bases de Datos" > "phpMyAdmin") o dividir el archivo SQL en partes más pequeñas. Otra opción es usar un cliente FTP para subir el archivo a la carpeta
public_htmly luego importarlo desde el Administrador de Archivos.
Paso 5: Subir los archivos de WordPress al nuevo servidor
Ya tenemos la base de datos "poblada". Ahora toca subir los archivos.
- En el cPanel de destino, abre el Administrador de Archivos.
- Navega hasta la carpeta
public_html. Si hay archivos dentro (como unindex.htmlpor defecto), selecciónalos y bórralos. - Haz clic en el botón Subir en la barra superior.
- Selecciona el archivo ZIP (
wordpress_backup.zip) que descargaste del servidor antiguo. Espera a que la barra de progreso llegue al 100%. - Una vez subido, verás el archivo ZIP en la lista de archivos. Haz clic derecho sobre él y selecciona Extraer.
- cPanel extraerá todo el contenido en la carpeta
public_html. Esto puede tardar un poco si hay muchos archivos. - Una vez extraído, selecciona el archivo ZIP y haz clic en Eliminar para mantener tu servidor limpio.
[INFO] Si tu WordPress estaba en una subcarpeta en el servidor antiguo (ej:
public_html/blog), deberás subir el ZIP a esa misma subcarpeta en el nuevo servidor. Si no existe, créala primero.
Fase 3: Configurar y verificar
Ya casi está. Ahora viene el paso más importante para que tu web funcione: conectar la base de datos con los archivos.
Paso 6: Editar el archivo wp-config.php
El archivo wp-config.php contiene las credenciales de la base de datos. Debemos actualizarlas para que apunten a la nueva base de datos que creamos.
- En el Administrador de Archivos del cPanel de destino, navega a
public_html(o a la carpeta donde extrajiste los archivos). - Busca el archivo
wp-config.phpy haz clic derecho sobre él. Selecciona Editar. - Se abrirá un editor de texto. Busca las siguientes líneas:
define('DB_NAME', 'nombre_base_datos_antigua'); define('DB_USER', 'usuario_base_datos_antigua'); define('DB_PASSWORD', 'contraseña_base_datos_antigua'); define('DB_HOST', 'localhost'); - Reemplaza los valores con los de tu nueva base de datos:
DB_NAME: El nombre completo de la base de datos que creaste (ej:usuario_nueva_wp_db).DB_USER: El usuario que creaste (ej:usuario_nuevo_usuario).DB_PASSWORD: La contraseña que le asignaste a ese usuario.DB_HOST: Generalmente eslocalhost. Si tu hosting usa un host remoto, cPanel te lo indicará.
- Guarda los cambios. En la mayoría de los editores de cPanel, es el botón Guardar cambios en la esquina superior derecha.
[WARNING] No cambies nada más en ese archivo. Un error de sintaxis (una comilla mal puesta) puede romper tu sitio por completo.
Paso 7: Ajustar las URLs (si es necesario)
Si tu dominio no cambia (es decir, usas el mismo dominio en el nuevo servidor), este paso puede no ser necesario. Sin embargo, si estás probando en un dominio temporal o una IP, deberás ajustarlo.
- La forma más fácil es usar un plugin como "Better Search Replace" o "Velvet Blues Update URLs". Pero como estamos en cPanel, podemos hacerlo directamente en la base de datos.
- Ve a phpMyAdmin en el nuevo cPanel y selecciona tu base de datos.
- Haz clic en la pestaña SQL.
- Ejecuta la siguiente consulta, reemplazando
http://www.tudominioantiguo.compor tu dominio antiguo yhttp://www.tudominionuevo.compor el nuevo (si es que cambia).UPDATE wp_options SET option_value = replace(option_value, 'http://www.olddomain.com', 'http://www.newdomain.com') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET guid = replace(guid, 'http://www.olddomain.com','http://www.newdomain.com'); UPDATE wp_posts SET post_content = replace(post_content, 'http://www.olddomain.com', 'http://www.newdomain.com'); UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://www.olddomain.com', 'http://www.newdomain.com'); - Si tu dominio no cambia, omite este paso por completo.
Paso 8: Comprobar y solucionar problemas
Ahora es el momento de la verdad. Abre tu navegador y escribe tu dominio.
- Si todo funciona : ¡Felicidades! Has completado una migrar wordpress cpanel con éxito.
- Si ves un error de conexión a la base de datos : Revisa que las credenciales en
wp-config.phpsean correctas y que el usuario tenga todos los privilegios sobre la base de datos. - Si ves un error 500 (Internal Server Error) : Esto suele ser un problema con los permisos de archivos o carpetas. Asegúrate de que las carpetas tengan permisos
755y los archivos644. Puedes ajustarlos desde el Administrador de Archivos, seleccionando todo y haciendo clic en "Permisos" en la barra superior. - Si ves una página en blanco : Desactiva todos los plugins. Puedes hacerlo renombrando la carpeta
wp-content/pluginsawp-content/plugins_backupdesde el Administrador de Archivos. Si la web carga, el problema es un plugin. Luego puedes ir activándolos uno por uno.
[INFO] Si tu web carga pero las imágenes no se ven, es probable que las URLs de los medios sigan apuntando al dominio antiguo. Ejecuta la consulta SQL del Paso 7, pero solo para la tabla
wp_postsywp_postmeta.
Preguntas Frecuentes (FAQ)
¿Puedo usar un plugin para hacer la migración?
Sí, existen plugins como "All-in-One WP Migration" o "Duplicator" que automatizan gran parte del proceso. Sin embargo, este método manual con cPanel te da un control total y no depende de plugins de terceros que pueden tener limitaciones de tamaño.
¿Qué pasa si mi nuevo hosting no usa cPanel?
Si tu nuevo hosting usa un panel diferente, como Syspanel (el cual se accede a través del puerto 2106), el proceso es muy similar. La mayoría de los paneles modernos incluyen herramientas de administración de archivos y bases de datos equivalentes. La lógica de exportar/importar archivos y bases de datos es universal.
¿Cuánto tiempo tarda la migración?
Depende del tamaño de tu sitio y de la velocidad de tu conexión. Un sitio pequeño (menos de 500MB) puede tardar entre 15 y 30 minutos. Sitios más grandes pueden tardar varias horas, especialmente en la subida de archivos.
¿Perderé mis visitas o mi posicionamiento SEO durante la migración?
Si mantienes el mismo dominio y no hay un periodo prolongado de inactividad, el impacto en SEO es mínimo. Es importante que, una vez terminada la migración, revises que todas las páginas respondan correctamente y que no haya errores 404.
¿Debo cambiar las DNS de mi dominio?
Sí, si estás cambiando de empresa de hosting, deberás actualizar los servidores DNS de tu dominio para que apunten a los del nuevo proveedor. Esto se hace desde el panel de control de tu registrador de dominios (donde compraste el dominio). Ten en cuenta que la propagación de DNS puede tardar entre 24 y 48 horas.
¿Y si algo sale mal durante el proceso?
Por eso es crucial que tengas una copia de seguridad de tu sitio original. Si algo falla, puedes restaurar la copia en el servidor antiguo y seguir con tu web como si nada hubiera pasado. No te estreses, es un proceso reversible.
Conclusión
Migrar WordPress de un servidor a otro con cPanel es una tarea muy manejable si sigues estos pasos con calma. La clave está en la organización: exportar bien los
