Cómo migrar un sitio WordPress de un hosting a otro manualmente
¿Tu sitio web va lento? ¿El soporte de tu hosting actual brilla por su ausencia? ¿O simplemente encontraste un plan con mejores prestaciones y precio? Cambiar de proveedor de hosting es una decisión inteligente, pero el proceso de migrar WordPress puede sonar aterrador si nunca lo has hecho.
La buena noticia es que no necesitas ser un experto en programación para lograrlo. Existen plugins que lo hacen todo automáticamente, pero a veces fallan, tienen límites de tamaño de archivo o simplemente prefieres tener el control total. Por eso, hoy te voy a enseñar a realizar una migración manual de principio a fin.
Este proceso, aunque parezca técnico, es como mudarte de casa: solo necesitas una caja (los archivos), una etiqueta (la base de datos) y una llave nueva (el nuevo hosting). Vamos a ello.
¿Qué necesitas antes de empezar?
Antes de ensuciarte las manos, es crucial tener todo listo para que la mudanza sea rápida y sin estrés. Aquí tienes tu checklist de supervivencia:
- Acceso FTP/SFTP al hosting antiguo: Necesitas un programa como FileZilla (gratuito) o el administrador de archivos de tu panel de control (cPanel, Plesk, etc.).
- Acceso a phpMyAdmin: Tanto en el hosting antiguo como en el nuevo. Aquí es donde viven tus tablas de base de datos.
- Credenciales del nuevo hosting: Usuario, contraseña y nombre de la base de datos que crearás.
- Un bloc de notas: Para anotar datos importantes sin perderlos.
- Tiempo y paciencia: La migración en sí toma entre 30 y 60 minutos, pero es mejor hacerlo con calma.
[WARNING] IMPORTANTE: Realiza siempre una copia de seguridad completa antes de tocar nada. Si algo falla, podrás restaurar tu sitio en el hosting antiguo sin perder ni una sola visita.
Paso 1: Preparar el nuevo hosting (El destino)
No puedes llegar a una casa nueva sin llaves. Primero, vamos a preparar el terreno en tu nuevo proveedor.
Crear la base de datos
Tu sitio WordPress necesita un lugar donde guardar sus artículos, comentarios y configuraciones. Ese lugar es la base de datos.
- Accede al panel de control de tu nuevo hosting (normalmente cPanel, Plesk o Syspanel).
- Busca la sección "Bases de Datos MySQL" y haz clic en "Crear Base de Datos".
- Ponle un nombre descriptivo, por ejemplo:
mipagina_wp. - Crea un usuario para esa base de datos (ej:
mipagina_user). - Asigna una contraseña segura (guárdala en tu bloc de notas).
- Añade ese usuario a la base de datos y otórgale TODOS LOS PRIVILEGIOS.
[INFO] Si tu hosting usa Syspanel, el nombre de la base de datos suele llevar un prefijo con tu usuario. No te preocupes, el sistema te lo indicará automáticamente.
Descargar e instalar WordPress (Temporalmente)
Aquí viene un truco de experto: instala una copia limpia de WordPress en el nuevo hosting antes de migrar. Esto crea la estructura de archivos y las tablas base que necesitaremos.
- Ve a la sección "Instaladores" o "WordPress" en tu panel.
- Ejecuta la instalación automática.
- No te preocupes por el contenido, solo necesitamos que la instalación se complete.
- Cuando termine, borra la instalación o déjala tal cual. Lo que realmente nos importa es que el sistema de archivos y las tablas ya existen.
Paso 2: Exportar los archivos del sitio (La caja)
Ahora vamos al hosting antiguo a empaquetar todas tus pertenencias digitales: temas, plugins, imágenes y el código central de WordPress.
Conectarse por FTP
- Abre FileZilla o tu cliente FTP favorito.
- Conéctate usando los datos de tu hosting antiguo (host, usuario, contraseña y puerto 21).
- Una vez conectado, busca la carpeta
public_html(ohtdocs). Dentro de ella están todos los archivos de tu web.
Descargar todo el contenido
- Selecciona todos los archivos y carpetas dentro de
public_html. - Haz clic derecho y elige "Descargar".
- Este proceso puede tardar unos minutos dependiendo del peso de tu web (imágenes, vídeos, etc.).
- Guarda esta carpeta en tu ordenador. La llamaremos
mis_archivos.
[TIP] Si tu web es muy pesada (más de 1GB), es mejor comprimir la carpeta en un archivo ZIP desde el panel de control del hosting antiguo y descargar solo ese archivo. Luego lo descomprimes en tu PC.
Paso 3: Exportar la base de datos (La etiqueta)
La base de datos es el cerebro de tu WordPress. Sin ella, tus archivos son solo un esqueleto vacío.
Acceder a phpMyAdmin
- Entra en el panel de control de tu hosting antiguo.
- Busca el icono de "phpMyAdmin".
- Selecciona la base de datos que corresponde a tu sitio actual (el nombre suele coincidir con el de tu web).
Exportar las tablas
- En el menú superior, haz clic en la pestaña "Exportar".
- Asegúrate de que el método sea "Rápido" y el formato "SQL".
- Haz clic en "Continuar" o "Exportar".
- Se descargará un archivo con extensión
.sql. Guárdalo junto a tus archivos, en la misma carpetamis_archivos.
[WARNING] NO EDITES el archivo .sql con un editor de texto normal como el Bloc de Notas de Windows, ya que puede corromper el formato. Si necesitas editarlo, usa un editor avanzado como Notepad++ o Sublime Text.
Paso 4: Subir archivos al nuevo hosting (Desempaquetar)
Ahora invertimos el proceso. Vamos a llevar la caja de archivos a la nueva casa.
- Conecta tu cliente FTP al nuevo hosting.
- Navega hasta la carpeta
public_htmldel nuevo hosting. Borra la instalación limpia que hicimos antes (o su contenido). - Sube todos los archivos de tu carpeta
mis_archivosa esta carpeta vacía. - Espera a que termine la subida. Es el paso más lento.
[TIP] Asegúrate de que la estructura de carpetas se mantenga. Es decir, la carpeta wp-content debe estar dentro de public_html, no suelta por ahí.
Paso 5: Importar la base de datos al nuevo hosting (Pegar la etiqueta)
Ya tienes los archivos en su sitio. Ahora toca darle vida importando la base de datos.
- Ve al panel de control del nuevo hosting y abre phpMyAdmin.
- Selecciona la base de datos que creaste en el Paso 1 (la que está vacía).
- Haz clic en la pestaña "Importar".
- Haz clic en "Elegir archivo" y selecciona el archivo
.sqlque descargaste. - Haz clic en "Continuar" o "Importar".
- Si todo ha ido bien, verás un mensaje de éxito y aparecerán todas tus tablas.
Paso 6: Conectar la base de datos (El puente)
Ahora viene el paso más crítico. WordPress necesita saber dónde está su nueva base de datos. Esto se configura en un archivo llamado wp-config.php.
- Dentro de FileZilla, navega a la carpeta
public_htmldel nuevo hosting. - Busca el archivo
wp-config.php. - Haz clic derecho sobre él y elige "Ver/Editar". Se abrirá un editor de texto.
- Busca estas líneas:
define( 'DB_NAME', 'nombre_base_datos' );
define( 'DB_USER', 'usuario_base_datos' );
define( 'DB_PASSWORD', 'contraseña_base_datos' );
define( 'DB_HOST', 'localhost' );
- Reemplaza los valores con los que creaste en el Paso 1.
- Guarda el archivo y ciérralo. FileZilla te preguntará si quieres subir los cambios al servidor. Acepta.
[INFO] En la mayoría de los casos, DB_HOST es localhost. Sin embargo, algunos proveedores usan una dirección específica como mysql.midominio.com. Si tu web no carga, revisa el correo de bienvenida de tu nuevo hosting para ver el host de la base de datos.
Paso 7: Actualizar URLs (El cambio de dirección)
Este es el paso que la mayoría olvida y causa dolores de cabeza. Si tu dominio es el mismo (ej: www.midominio.com), este paso es más sencillo. Pero si estás cambiando de dominio o usando una URL temporal, tienes que hacer un ajuste.
Si mantienes el mismo dominio
Puedes saltarte este paso, pero hay una trampa. A veces, las URLs guardadas en la base de datos tienen www o no lo tienen. Para evitar problemas, vamos a forzar la URL correcta.
- Vuelve a editar
wp-config.php. - Añade estas líneas justo antes de la línea que dice
/* That's all, stop editing! Happy publishing. */:
define('WP_HOME','http://tudominio.com');
define('WP_SITEURL','http://tudominio.com');
- Reemplaza
http://tudominio.comcon tu URL exacta (con o sinwww). - Guarda el archivo.
Si estás usando una URL temporal o un dominio nuevo
- Ve a phpMyAdmin en el nuevo hosting.
- Selecciona tu base de datos importada.
- Haz clic en la pestaña "SQL".
- Ejecuta esta consulta (reemplaza los valores):
UPDATE wp_options SET option_value = 'http://nueva-url.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'http://nueva-url.com' WHERE option_name = 'home';
- Haz clic en "Continuar".
[WARNING] Este último paso es delicado. Si usas una URL temporal, después tendrás que repetir el proceso con tu dominio real. Es mejor si puedes apuntar tu dominio al nuevo hosting antes de empezar (cambiando los DNS), así evitas este paso de las URLs temporales.
Paso 8: Comprobar el sitio (La inspección final)
Ya has hecho el trabajo duro. Ahora toca la parte más gratificante: verificar que todo funciona.
- Abre tu navegador en modo incógnito.
- Escribe la URL de tu sitio (la temporal o la definitiva).
- La página principal debe cargar perfectamente.
- Haz clic en un par de enlaces internos y entradas.
- Revisa que las imágenes se ven correctamente.
- Entra a tu panel de administración:
tudominio.com/wp-admin. - Ve a Ajustes > Enlaces permanentes y haz clic en "Guardar cambios" (esto actualiza las reglas de reescritura).
Solución de problemas comunes
- Error "Error establishing a database connection": Revisa el
wp-config.php. Los datos de la base de datos están mal. - Página en blanco o error 500: Algún archivo se ha subido mal o hay un conflicto de plugins. Vuelve a subir los archivos o desactiva los plugins renombrando la carpeta
wp-content/pluginsawp-content/plugins_desactivado. - Solo aparece la página de inicio pero no las demás: Ve a Ajustes > Enlaces permanentes y guarda de nuevo.
Paso 9: Actualizar DNS (La mudanza oficial)
Si tu nuevo hosting usa una IP diferente a la del antiguo, necesitas decirle al mundo que tu web ha cambiado de casa. Esto se hace cambiando los servidores DNS de tu dominio.
- Ve al registrador de tu dominio (donde compraste el
.com,.es, etc.). - Busca la sección "Gestión de DNS" o "Nameservers".
- Sustituye los nameservers antiguos por los que te proporciona tu nuevo hosting (suelen tener el formato
ns1.nuevohosting.comyns2.nuevohosting.com). - Guarda los cambios.
[INFO] La propagación de DNS puede tardar desde 2 horas hasta 48 horas. Durante este tiempo, algunos usuarios verán tu web en el hosting antiguo y otros en el nuevo. No te preocupes, es normal y se resuelve solo.
Preguntas Frecuentes (FAQ)
¿Cuánto tiempo tarda en estar lista la migración?
El proceso manual tarda entre 1 y 2 horas si tienes todo a mano. La propagación de DNS es lo que más tarda (hasta 48h), pero no requiere que estés delante del ordenador.
¿Qué es mejor, migrar con plugin o manualmente?
Para sitios pequeños y medianos, los plugins como "All-in-One WP Migration" son muy fiables. Para sitios grandes o con configuraciones especiales, la migración manual te da más control y suele ser más rápida.
¿Puedo mover sitio sin perder el posicionamiento SEO?
Sí, si sigues los pasos correctamente (especialmente el de los enlaces permanentes y las URLs), tu SEO no debería verse afectado. Asegúrate de que el sitio cargue rápido en el nuevo WordPress hosting y de que no haya errores 404 tras la migración.
¿Qué hago con el hosting antiguo?
Una vez que la propagación de DNS haya terminado y tu web funcione perfectamente en el nuevo hosting, puedes cancelar el servicio antiguo. Te recomendamos esperar una semana para asegurarte de que no necesitas acceder a ningún archivo antiguo.
Migrar tu sitio es un gran paso para mejorar el rendimiento de tu web. Con esta guía manual, tienes el control total del proceso y aprenderás mucho sobre cómo funciona tu WordPress por dentro. ¡Buena suerte con la mudanza!
