Migrar WordPress a otro servidor: 7 problemas técnicos que pueden romper tu web
Cambiar una web WordPress de servidor puede parecer una tarea sencilla. Copiamos los archivos, exportamos la base de datos, modificamos la configuración y, si todo ha ido bien, la web vuelve a funcionar en su nuevo alojamiento.
Pero ¿qué ocurre cuando la página principal carga correctamente y, sin embargo, algunos formularios dejan de enviar correos, determinados documentos no se descargan o un plugin personalizado comienza a generar errores?
Una migración técnicamente correcta no siempre es una migración funcionalmente completa.
En Zonsai, donde trabajamos con instalaciones WordPress complejas, desarrollos personalizados e integraciones con servicios externos, sabemos que el verdadero desafío no consiste únicamente en trasladar una web, sino en garantizar que todos sus componentes continúen funcionando después del cambio.
En este artículo repasamos siete problemas habituales que pueden aparecer al migrar WordPress a otro servidor y cómo prevenirlos.
1. Rutas absolutas y referencias al servidor anterior
Uno de los problemas más frecuentes en migraciones complejas es encontrar rutas de archivos que dependen directamente de la estructura del servidor original.
Imaginemos que un plugin personalizado necesita acceder a un documento almacenado en una carpeta concreta.
En lugar de utilizar las funciones de WordPress para resolver la ubicación del archivo, el código contiene una ruta fija:
/var/www/vhosts/antiguo-servidor/httpdocs/wp-content/uploads/documento.pdf
Mientras la web permanece en ese servidor, todo funciona correctamente. Sin embargo, cuando la trasladamos a otro alojamiento, esa ruta deja de existir.
El resultado puede ser un error de descarga, una funcionalidad que no responde o incluso un error fatal de PHP.
¿Cómo evitarlo?
En los desarrollos WordPress es preferible utilizar las funciones nativas para localizar archivos y directorios.
Por ejemplo:
ABSPATHpara obtener la ruta base de WordPress.plugin_dir_path()para localizar archivos dentro de un plugin.get_stylesheet_directory()para trabajar con el tema hijo.wp_upload_dir()para obtener las rutas y URL del directorio de subidas.
También conviene revisar las referencias a dominios antiguos almacenadas en la base de datos.
En este último caso, es importante utilizar herramientas compatibles con los datos serializados de WordPress, como WP-CLI, en lugar de realizar sustituciones indiscriminadas directamente sobre las tablas.
Una buena migración comienza por eliminar las dependencias innecesarias del entorno original.
2. Diferencias de versión de PHP y extensiones disponibles
Que dos servidores puedan ejecutar WordPress no significa que ofrezcan exactamente el mismo entorno.
Una web puede funcionar correctamente con una versión de PHP y presentar errores al cambiar a otra.
Esto resulta especialmente importante cuando existen:
- Plugins personalizados desarrollados hace años.
- Temas con funcionalidades antiguas.
- Librerías externas que dependen de versiones concretas.
- Código que utiliza funciones obsoletas.
- Extensiones PHP necesarias para determinados procesos.
Además de la versión de PHP, debemos comprobar extensiones como curl, mbstring, intl, zip, mysqli o las bibliotecas de procesamiento de imágenes que utilice la aplicación.
¿Cómo evitarlo?
Antes de realizar la migración debemos inventariar el entorno original y comprobar su compatibilidad con el destino.
No se trata necesariamente de mantener una versión antigua de PHP. En ocasiones, la migración es precisamente una oportunidad para actualizarla.
Pero una actualización de PHP y una migración de servidor son dos cambios diferentes, cada uno con sus propios riesgos.
Siempre que sea posible, conviene probar primero la aplicación en un entorno de preproducción.
3. Problemas con los plugins de migración
Herramientas como Duplicator, All-in-One WP Migration o los sistemas de copia y restauración de los proveedores de hosting pueden facilitar enormemente el traslado de una instalación WordPress.
Sin embargo, no todas las webs tienen las mismas características.
Una instalación pequeña con pocas páginas no presenta las mismas dificultades que un WordPress con miles de documentos, varios idiomas, una tienda online o desarrollos personalizados.
Los problemas más habituales incluyen:
- Límites de memoria durante la creación o restauración del paquete.
- Tiempo máximo de ejecución insuficiente.
- Archivos demasiado grandes.
- Restricciones de espacio temporal.
- Permisos incorrectos.
- Procesos interrumpidos antes de finalizar.
¿Cómo evitarlo?
Antes de elegir el método de migración debemos conocer el tamaño y la estructura de la instalación.
En determinados proyectos resulta más fiable realizar una migración controlada mediante archivos, base de datos y herramientas de administración del servidor.
También debemos excluir los archivos temporales que no sea necesario trasladar, sin eliminar información que forme parte de la aplicación.
La herramienta de migración es importante, pero el procedimiento debe adaptarse a las características reales de la web, no al revés.
4. Configuraciones de seguridad que bloquean funcionalidades
Una web puede funcionar perfectamente en su servidor original y comenzar a devolver errores HTTP 403 o 500 después de trasladarla.
No siempre significa que exista un problema en el código.
Los servidores pueden disponer de distintas configuraciones de seguridad, incluyendo firewalls de aplicaciones web (WAF), reglas de ModSecurity, restricciones de acceso o límites sobre el tamaño de las peticiones y respuestas.
Por ejemplo, una funcionalidad que genera una respuesta de gran tamaño podría activar una regla de seguridad del nuevo servidor.
También pueden verse afectados determinados procesos AJAX, formularios o peticiones realizadas por plugins personalizados.
¿Cómo evitarlo?
El primer paso es consultar los registros de errores de PHP, Apache o Nginx y del sistema de seguridad correspondiente.
No es recomendable desactivar globalmente el firewall simplemente porque una funcionalidad haya dejado de funcionar.
Lo correcto es identificar la regla que está provocando el bloqueo, comprobar si la petición es legítima y aplicar una excepción lo más limitada posible cuando esté justificada.
Seguridad y funcionalidad deben convivir. Resolver un problema desactivando protecciones puede crear otro mucho más grave.
5. Credenciales y configuraciones dependientes del alojamiento
Muchas webs WordPress se conectan con servicios externos:
- Plataformas de envío de correo.
- Sistemas CRM o ERP.
- Servicios de almacenamiento.
- APIs de terceros.
- Pasarelas de pago.
- Sistemas de autenticación.
Durante una migración podemos encontrarnos con credenciales guardadas en archivos de configuración, variables de entorno, opciones de WordPress o código personalizado.
Algunas integraciones también dependen de la dirección IP del servidor, de reglas de firewall o de configuraciones DNS.
¿Cómo evitarlo?
Debemos elaborar un inventario de las integraciones antes de comenzar.
Es necesario comprobar qué credenciales utiliza cada servicio, dónde se almacenan y si el nuevo entorno requiere alguna modificación.
También conviene aprovechar el proceso para eliminar credenciales innecesarias y revisar los permisos asociados a cada integración.
Una migración no debería convertirse en una oportunidad para copiar indefinidamente configuraciones antiguas sin verificar su utilidad o seguridad.
6. Funcionalidades que dejan de funcionar aunque la web cargue
Este es probablemente el problema más peligroso porque puede pasar desapercibido.
La portada funciona. Los menús se muestran correctamente. Las páginas cargan.
Aparentemente, la migración ha terminado.
Sin embargo, puede que:
- Los formularios no envíen notificaciones.
- Las tareas programadas de WordPress no se ejecuten.
- Las descargas privadas devuelvan errores.
- Las traducciones no estén correctamente relacionadas.
- Determinados filtros AJAX fallen.
- Las integraciones externas no puedan autenticarse.
- Los correos electrónicos terminen en spam.
La disponibilidad de la página principal no garantiza que todos los procesos de negocio sigan operativos.
¿Cómo evitarlo?
La solución consiste en preparar una batería de pruebas funcionales antes de migrar.
Debemos identificar las operaciones más importantes para la empresa y comprobarlas después del traslado.
En una tienda online, por ejemplo, no basta con visualizar los productos: hay que verificar el carrito, el proceso de compra y las notificaciones.
En una web corporativa, puede resultar imprescindible comprobar los formularios de contacto y la recepción de correos.
En un catálogo técnico, las búsquedas y descargas pueden ser las funcionalidades críticas.
7. Cambiar los DNS demasiado pronto
Una migración también puede fallar por una mala planificación del cambio de dominio o de los registros DNS.
Si modificamos los DNS antes de comprobar el nuevo servidor, los visitantes podrían llegar a una instalación incompleta.
Además, los cambios DNS no se reflejan simultáneamente en todos los resolutores.
Durante un periodo de transición, diferentes usuarios pueden acceder a servidores distintos debido a las cachés DNS.
Esto es especialmente delicado en webs que reciben pedidos, formularios o información que se guarda continuamente en la base de datos.
¿Cómo evitarlo?
Siempre que sea posible, debemos verificar el nuevo alojamiento antes de modificar los DNS públicos.
Podemos utilizar un dominio de pruebas o una configuración local del archivo hosts para acceder al servidor de destino.
También debemos planificar la sincronización final de los datos y evitar que se produzcan escrituras divergentes entre las dos instalaciones.
Reducir previamente el TTL de los registros DNS puede ayudar a acortar el periodo de transición, aunque no elimina completamente los efectos de las cachés.
Cómo planificar una migración WordPress sin riesgos innecesarios
Aunque cada proyecto requiere un procedimiento específico, una migración profesional debería contemplar estas fases.
Auditoría inicial
Analizar la instalación, los plugins, el tema, las integraciones, el tamaño de los archivos y los requisitos del servidor.
Copia de seguridad verificable
Disponer de una copia completa de archivos y base de datos y comprobar que puede restaurarse.
Preparación del nuevo entorno
Configurar PHP, base de datos, certificados, permisos, tareas programadas y medidas de seguridad.
Migración de prueba
Trasladar la instalación y resolver las incompatibilidades detectadas.
Validación funcional
Comprobar los procesos más importantes de la web, no solamente su apariencia.
Cambio controlado a producción
Coordinar la sincronización final de datos, el cambio DNS y la supervisión posterior.
Plan de reversión
Tener preparado un procedimiento para volver al entorno anterior si aparece una incidencia grave, considerando también cómo recuperar los datos generados durante la transición.
Conclusión: migrar bien es garantizar la continuidad
Migrar WordPress a otro servidor no debería limitarse a comprobar que la portada se visualiza correctamente.
En instalaciones complejas, la migración implica revisar dependencias técnicas, configuraciones de seguridad, integraciones y procesos que pueden resultar fundamentales para la actividad de una empresa.
Cuanto más importante sea la web para el negocio, mayor debe ser el nivel de planificación y verificación.
¿Necesitas migrar una web WordPress compleja?
En Zonsai trabajamos con WordPress, plugins personalizados, integraciones y entornos de alojamiento que requieren una gestión técnica especializada.
Si necesitas trasladar tu web a otro servidor, actualizar su infraestructura o resolver problemas derivados de una migración, podemos estudiar tu instalación y plantear un procedimiento adaptado a sus necesidades.
Contacta con Zonsai y cuéntanos tu proyecto.