Guía Completa para Migrar un Sitio WordPress de un Hosting a Otro: Paso a Paso

Migrar un sitio de WordPress de un hosting a otro puede parecer una tarea abrumadora, especialmente si no estás familiarizado con el proceso. Sin embargo, siguiendo un enfoque organizado y metódico, puedes completar la migración sin problemas y asegurar que tu sitio web funcione perfectamente en su nuevo hogar. En esta guía, te llevaré paso a paso a través del proceso de migración, basado en las experiencias que he tenido en casos recientes.

Todo comienza con un «chanta»(en términos de la RAE: Persona que suele engañar o estafar a otras, muchas veces fingiendo poseer influencias que no tiene).
En este caso el antiguo proveedor y desarrollador del sitio web de mi cliente quiere cobrar un 40% más por tareas de mantenimiento recargándolo en el costo del Hosting y del SSL entre otras cosas.
Tras la negativa por parte del cliente de pagar lo que pide, me solicitan migrar su sitio WordPress a un nuevo hosting. Previamente el chanta nos cobra el backup(que se lo ha hecho su proveedor de hosting) y finalmente nos entrega los archivos necesario: El contenido de todas las carpetas que forman parte del public_html y el de la base de datos.

Asi que sin más dilación me dispuse, asistido por nuestro amigo en común don GPT y el estupendo equipo de atención al cliente de Namecheap para completar con éxito la migración. Aquí les dejo los pasos del proceso:

1. Preparativos Antes de la Migración

Antes de iniciar la migración, es crucial realizar algunos preparativos esenciales:

a. Realiza un Respaldo Completo del Sitio

  • Archivos del Sitio: Asegúrate de tener una copia de todos los archivos de tu sitio web. Esto incluye la carpeta public_html, donde se encuentran los archivos de WordPress, los temas, los plugins y los medios cargados.
  • Base de Datos: Exporta la base de datos de WordPress a un archivo .sql usando herramientas como phpMyAdmin dentro de Cpanel. Esta base de datos contiene todo el contenido, las configuraciones, los usuarios y más.

b. Verifica las Versiones de PHP

  • Antes de la migración, es importante conocer la versión de PHP que utiliza tu sitio en el hosting actual. Asegúrate de que el nuevo hosting soporte la misma versión de PHP o una versión compatible. Las incompatibilidades pueden causar errores críticos.
    En mi caso así fue, por lo que tuve que activar el modo DEBUG=True en wp-config para ver los errores y allí descubrimos que la versión 8.0 de PHP que utilizaba mi servidor no era compatible con la versión 7.4 en la que el sitio habia sido desarrollado.
    En este caso y porque el hosting lo permite pude definir la versión 7.4 al inicio del archivo htacces

c. Acceso a Herramientas Necesarias

  • Asegúrate de tener acceso al cPanel del nuevo hosting, así como a una cuenta de FTP (File Transfer Protocol) para subir archivos. También necesitarás phpMyAdmin para importar la base de datos y SSH si prefieres usar comandos.

2. Crear el Entorno en el Nuevo Hosting

a. Configura el Dominio

  • Desde el cPanel del nuevo hosting, añade el dominio asociado con tu sitio web. Esto creará una nueva carpeta en el servidor donde subirás los archivos de WordPress. En mi caso el proveedor del dominio no era el proveedor de hosting por lo que fue necesario delegar los DNS del dominio para que apunten al nuevo hosting.

b. Configura la Base de Datos

  • Crear la Base de Datos: En cPanel, ve a la sección de MySQL Databases y crea una nueva base de datos, un usuario de base de datos con su contraseña, y asigna los permisos necesarios.
  • Importar la Base de Datos: Usa phpMyAdmin para importar el archivo .sql que exportaste anteriormente o que te haya facilitado el antiguo proveedor como backup. Asegúrate de que la importación se complete sin errores.

c. Instala WordPress (Opcional)

  • Si prefieres, puedes instalar una copia nueva de WordPress en el nuevo hosting para asegurar que todo esté configurado correctamente. Luego, reemplazarás los archivos por los de tu sitio antiguo.

3. Migrar Archivos del Sitio Web

a. Conéctate al Nuevo Hosting por FTP

  • Utiliza un cliente FTP como FileZilla para conectarte al nuevo servidor. Los datos de conexión(Dirección IP, Usuario, Contraseña y Puerto) te los debe facilitar tu proveedor de hosting. Navega hasta la carpeta raíz del dominio, que generalmente es public_html o una subcarpeta con el nombre del dominio.

b. Sube los Archivos

  • Sube todos los archivos de WordPress desde tu copia de seguridad a la carpeta correspondiente al dominio que estamos migrando en el nuevo hosting. Asegúrate de que todos los archivos, incluyendo el contenido de wp-content, sean transferidos correctamente.

4. Configurar el Archivo wp-config.php

El archivo wp-config.php de WordPress es crucial para conectar tu sitio con la base de datos en el nuevo hosting. En Cpanel puedes dirigirte a Files Manager y navegar hasta la carpeta que creaste para el dominio. Allí podrás encontrar el archivo wp-config.php, clic derecho + edit como en la siguiente imagen:

configurando wp-config.php en WordPress

a. Edita wp-config.php

Una vez abierto el archivo wp-config.php que has subido, edita las siguientes líneas para que coincidan con los detalles de la nueva base de datos que creaste en tu hosting y asociaste a este dominio:

define('DB_NAME', 'nombre_de_tu_base_de_datos');
define('DB_USER', 'nombre_de_tu_usuario');
define('DB_PASSWORD', 'tu_contraseña');
define('DB_HOST', 'localhost');

Guarda los cambios y asegúrate de que el archivo esté correctamente subido al servidor.

5. Ajuste de URL y Permisos de Archivos

a. Verificar las URL en la Base de Datos

  • Si el dominio ha cambiado o si el sitio se encuentra temporalmente en una URL diferente, necesitarás actualizar todas las referencias en la base de datos. Puedes hacer esto utilizando un plugin como Better Search Replace o mediante WP-CLI si tienes acceso SSH. En mi caso instalé WP-CLI ya que es una herramienta de comandos poderosa para WordPress, tuve que pedirle a mi proveedor de hosting que habilite la conexión SSH con el servidor. Esta es para mi la mejor opción pero al ser más avanzada ten mucho cuidado con lo que haces porque tienes acceso directo y puedes liarla parda.

b. Ajuste de Permisos

  • Asegúrate de que los permisos de archivos y carpetas sean correctos. Generalmente, los archivos deben tener permisos de 644 y las carpetas de 755.

6. Pruebas y Resolución de Errores

a. Accede al Sitio Web

  • Intenta acceder a tu sitio web en el nuevo hosting. Si todo ha ido bien, deberías ver el sitio cargado correctamente.

b. Verifica Acceso al Admin de WordPress

  • Inicia sesión en el área de administración de WordPress para asegurarte de que puedes acceder y gestionar el sitio. Si no recuerdas la contraseña, puedes resetearla a través de SSH utilizando WP-CLI como hemos descrito antes.

c. Resolver Errores Comunes

Error 500: En mi caso como comenté anteriormente obtuve un error 500 del servidor debido a la versión de PHP que no era compatible con la que se habia utilizado al momento de desarrollar el sitio.

Para solucionar esto fue necesario agregar al inicio del archivo .htacces la siguiente linea quepermite manejar la versión correcta de PHP:

<IfModule mime_module>
  AddHandler application/x-httpd-alt-php74 .php
</IfModule>

URLs Rotos: Si las URLs de las imágenes o páginas están rotas, asegúrate de que las rutas sean correctas y de que las configuraciones de enlaces permanentes estén actualizadas. Además, si han cambido ten en cuenta que tu SEO se verá afectado. Lo ideal sería, si tienes la posibilidad que hagas redirecciones 301 de las urls antiguas a las nuevas para transmitirles la autoridad.

Plugins Incompatibles: Un plugin del sitio estaba causando problemas por alguna razón. Lo que hice fue renombrar la carpeta de plugins a plugins_bk y crear una carpeta plugin vacia. De este modo WordPress desactiva automáticamente todos los plugins y pude re-instalar uno a uno los plugins y la última versión del que estaba causando problemas, con esto se resolvió y todo funciona con normalidad.

Si usabas un plugin de caché como LiteSpeed Cache, reactívalo y reconfigúralo según las necesidades del nuevo hosting. Asegúrate de que los archivos de caché estén correctamente configurados y que el wp-content/advanced-cache.php esté presente.

7. Post-Migración: Revisión Final

a. Revisa la Funcionalidad del Sitio

  • Navega por el sitio para verificar que todas las páginas y funcionalidades están operativas.

b. Verifica la Configuración de SEO

  • Asegúrate de que las configuraciones de SEO, incluyendo los robots.txt y sitemaps, estén en su lugar y funcionando.

c. Actualiza DNS (si es necesario)

  • Si aún no lo has hecho, actualiza las configuraciones DNS para apuntar al nuevo hosting. Este proceso puede tardar algunas horas en propagarse.

Listo! ya deberías tener un panorama sobre lo que implica una migración de hosting para un sitio WordPress. Si necesitas una mano o tienes algun caso que pueda aportar a este solo di hola! =)


Deja un comentario

Scroll al inicio