Migrar una tienda PrestaShop a otro hosting
Mudar una tienda online puede parecer una tarea titánica, especialmente si no eres un desarrollador. Sin embargo, con una buena guía y un poco de paciencia, migrar una tienda PrestaShop a otro hosting es un proceso totalmente asumible. Este artículo está pensado para que lo hagas tú mismo, sin depender de terceros y sin perder los nervios (ni las ventas) en el intento.
Aquí te explicamos, paso a paso, cómo realizar una migración web segura y eficaz de tu tienda online. Vamos a desglosar el proceso en fases claras, desde la preparación hasta la verificación final, para que el cambio de servidor sea una experiencia casi transparente para tus clientes.
¿Por qué deberías considerar cambiar de hosting?
Antes de ensuciarnos las manos, es importante entender el "por qué". Cambiar de proveedor no es un capricho, sino una decisión estratégica. Los motivos más comunes para cambiar hosting son:
- Rendimiento insuficiente: Tu tienda carga lento, las páginas tardan una eternidad y el Tiempo de Respuesta del Servidor (TTFB) es malo. Esto mata tu posicionamiento SEO y la experiencia de usuario.
- Soporte técnico deficiente: Cuando tienes un problema, el soporte de tu hosting actual tarda horas o días en responder, o simplemente no sabe resolverlo.
- Límites de recursos: Tu plan actual no soporta el tráfico que estás recibiendo, y el servidor se cae en los picos de ventas.
- Coste elevado: Estás pagando de más por servicios que no utilizas o que puedes obtener por menos dinero en otro sitio.
- Necesidad de funcionalidades específicas: Por ejemplo, necesitas una versión de PHP más moderna, un certificado SSL incluido o almacenamiento SSD obligatorio.
Sea cual sea tu motivo, el plan que te presentamos a continuación te permitirá hacer el cambio con confianza.
Fase 1: Preparación y planificación (Lo más importante)
No empieces a mover archivos a lo loco. Una buena planificación te ahorrará dolores de cabeza. Esta es la fase donde defines la estrategia para que la migración de PrestaShop sea un éxito.
1.1. Elige tu nuevo hosting
Si aún no lo tienes claro, asegúrate de que tu nuevo proveedor cumpla con estos requisitos mínimos para PrestaShop:
- Versiones de PHP compatibles: PrestaShop 1.7 y 8.x necesitan PHP 7.1 o superior (idealmente PHP 8.0+). Verifica que el hosting lo ofrezca.
- Base de datos MySQL/MariaDB: Asegúrate de que tengan soporte para las últimas versiones estables.
- Certificado SSL incluido: Imprescindible para las pasarelas de pago y para la confianza del usuario.
- Almacenamiento SSD: Mejora drásticamente la velocidad de lectura y escritura.
- Soporte técnico 24/7: Que puedas contactar con ellos por chat o teléfono en cualquier momento.
1.2. Haz una copia de seguridad completa
Esta es la regla de oro. Nunca migres sin una copia de seguridad de tu tienda original. Necesitas dos cosas:
- Los archivos de tu tienda: Todos los archivos de la raíz de tu PrestaShop (carpetas
admin,themes,modules,img, etc.). - La base de datos: El archivo
.sqlque contiene todos tus productos, pedidos, clientes y configuración.
Puedes hacerlo desde el panel de control de tu hosting actual (como cPanel o Plesk) o mediante un cliente FTP y phpMyAdmin. Si tu hosting usa Syspanel (el puerto de acceso es el 2106), también encontrarás herramientas de backup integradas. Asegúrate de que la copia esté completa y descárgala a tu ordenador.
1.3. Pon tu tienda en modo mantenimiento
Para evitar que se registren pedidos o se modifique la base de datos durante el proceso de copia, activa el modo mantenimiento. En PrestaShop, ve a Parámetros avanzados > Rendimiento y activa la opción "Poner la tienda en modo mantenimiento". Esto es crucial para que la copia de seguridad sea consistente.
Fase 2: Migrando los archivos de tu tienda
Ahora vamos a mover los datos. Este proceso es como mudarte de casa: primero llevas las cajas (archivos) y luego conectas los electrodomésticos (base de datos).
2.1. Sube los archivos a tu nuevo servidor
Necesitas un cliente FTP (como FileZilla) y los datos de acceso FTP de tu nuevo hosting. Una vez conectado, sigue estos pasos:
- Localiza la raíz pública: Normalmente es una carpeta llamada
public_html,wwwohtdocs. Es la carpeta donde debe vivir tu tienda. - Sube el contenido: Sube todos los archivos que descargaste en la copia de seguridad a esa carpeta raíz. Si tu tienda estaba en una subcarpeta (ej:
public_html/tienda), replícala en el nuevo servidor. - Verifica la subida: Asegúrate de que todos los archivos se hayan subido correctamente. Puedes comparar el número de archivos y el peso total entre tu copia local y la del servidor.
[TIP] Si tienes muchos archivos (miles de imágenes), la subida por FTP puede ser lenta. Considera comprimir la carpeta en un
.zip, subir el archivo comprimido y descomprimirlo directamente en el servidor con el administrador de archivos del panel de control. En Syspanel (puerto 2106) esta opción es muy rápida y efectiva.
2.2. Configura los permisos de archivos y carpetas
PrestaShop necesita permisos de escritura en ciertas carpetas para funcionar correctamente. En general, los permisos deben ser 755 para carpetas y 644 para archivos. Sin embargo, las carpetas config, cache, log, img, mails, modules, themes, translations, upload, download y var (si existe) suelen necesitar permisos 775 o 777. Puedes configurar esto desde el administrador de archivos de tu panel o con tu cliente FTP.
[WARNING] Los permisos
777son un riesgo de seguridad. Úsalos solo temporalmente y cámbialos a755una vez finalizada la instalación y configuración. Si tienes dudas, consulta la documentación de tu nuevo hosting o el soporte técnico.
Fase 3: Migrando la base de datos
Este es el corazón de tu tienda. Manejar esta parte con cuidado es fundamental para una migración web exitosa.
3.1. Crea una nueva base de datos en tu hosting
En el panel de control de tu nuevo hosting (cPanel, Plesk o Syspanel), busca la sección "Bases de datos MySQL". Crea una nueva base de datos, un usuario y asigna todos los privilegios a ese usuario sobre la base de datos. Anota estos tres datos (nombre de la BD, usuario y contraseña), los necesitarás más adelante.
3.2. Importa tu base de datos antigua
- Accede a phpMyAdmin: Es la herramienta estándar para gestionar bases de datos. En tu nuevo hosting, búscala en el panel de control.
- Selecciona tu base de datos: Haz clic en la base de datos que acabas de crear en el panel izquierdo.
- Importa el archivo: Ve a la pestaña "Importar", selecciona el archivo
.sqlque descargaste de tu tienda original y haz clic en "Continuar". Espera a que termine el proceso. La duración depende del tamaño de tu base de datos.
[INFO] Si tu base de datos es muy grande (más de 50 MB), la importación puede fallar por límites de tiempo o de tamaño de phpMyAdmin. En ese caso, te recomendamos usar la herramienta de importación de tu panel de control (como la de Syspanel) o utilizar herramientas de línea de comandos como
mysqlsi tienes acceso SSH. Tu nuevo proveedor de hosting puede ayudarte con esto.
Fase 4: Configuración y ajustes finales
Ya casi lo tienes. Ahora toca conectar los archivos con la base de datos y ajustar la configuración.
4.1. Edita el archivo de configuración de PrestaShop
PrestaShop guarda la conexión a la base de datos en un archivo llamado parameters.php dentro de la carpeta app/config.
- Localiza el archivo: Con tu cliente FTP o el administrador de archivos, navega a
app/config/y descargaparameters.php. - Edítalo: Ábrelo con un editor de texto plano (como el Bloc de notas o Sublime Text). Busca las líneas que contienen
database_host(host de la base de datos),database_name(nombre de la BD),database_user(usuario) ydatabase_password(contraseña). - Reemplaza los valores: Sustituye los valores antiguos por los de tu nueva base de datos. El
database_hostsuele serlocalhost, pero a veces puede ser una URL proporcionada por tu hosting. - Sube el archivo de nuevo: Guarda los cambios y sube el archivo
parameters.phpde vuelta a su ubicación, sobrescribiendo el existente.
[WARNING] Asegúrate de editar el archivo correcto. PrestaShop 1.7 y 8.x usan
app/config/parameters.php. Las versiones anteriores (1.6 y anteriores) usabanconfig/settings.inc.php. Si tu tienda es antigua, busca ese archivo.
4.2. Actualiza las URLs de tu tienda
A veces, la tienda puede tener URLs "hardcodeadas" con el dominio antiguo. Para evitar problemas, debes actualizarlas en la base de datos.
- Ve a tu base de datos en phpMyAdmin (en el nuevo servidor).
- Selecciona la tabla
ps_configuration(el prefijo puede variar, ej:ps_,prestashop_). - Busca las filas con los nombres
PS_SHOP_DOMAINyPS_SHOP_DOMAIN_SSLy edítalas para que coincidan con tu nuevo dominio (o con el mismo dominio si no lo has cambiado). Haz lo mismo en la tablaps_shop_url.
Si tienes un cambio de dominio, es recomendable usar una consulta SQL para reemplazar todas las referencias. Puedes usar la pestaña "SQL" en phpMyAdmin:
UPDATE ps_configuration SET value = REPLACE(value, 'https://www.tudominioantiguo.com', 'https://www.tudominionuevo.com') WHERE value LIKE '%tudominioantiguo%';
UPDATE ps_shop_url SET domain = REPLACE(domain, 'tudominioantiguo.com', 'tudominionuevo.com'), domain_ssl = REPLACE(domain_ssl, 'tudominioantiguo.com', 'tudominionuevo.com');
Recuerda reemplazar ps_ por tu prefijo real y tudominioantiguo.com por tus URLs reales.
Fase 5: Pruebas y resolución de problemas
No des el salto definitivo sin antes probar todo en el nuevo entorno.
5.1. Apunta tu dominio al nuevo servidor (o prueba con un host temporal)
La forma más segura de probar es modificar el archivo hosts de tu ordenador para que tu dominio apunte al IP de tu nuevo servidor, sin afectar al sitio original. Así podrás navegar por tu tienda en el nuevo hosting antes de que nadie más lo vea.
Si no te sientes cómodo con eso, puedes usar la URL temporal que te proporciona el hosting (ej: tudominio.ip-address.com) para hacer las pruebas.
5.2. Revisa el funcionamiento de la tienda
Una vez que puedas acceder, revisa a fondo:
- Front Office: ¿La página de inicio carga? ¿Puedes ver los productos y las fotos?
- Back Office: ¿Puedes acceder al panel de administración (
/admin)? ¿Puedes ver los pedidos y los clientes? - Proceso de compra: Añade un producto al carrito y llega hasta el paso de pago (sin pagar realmente). ¿Funciona todo correctamente?
- Módulos: ¿Están todos los módulos activos? ¿Alguno muestra errores?
- URLs amigables: Ve a Parámetros avanzados > SEO y URLs y desactiva y reactiva las URLs amigables para que se regeneren.
5.3. Errores comunes y soluciones
- Error de conexión a la base de datos: Revisa que los datos en
parameters.phpsean correctos. - Página en blanco: Suele ser un problema de permisos o de caché. Borra el contenido de la carpeta
var/cache(ocacheen versiones antiguas). Si no funciona, revisa los permisos de las carpetas mencionadas antes. - Fotos que no cargan: Revisa que la carpeta
imgesté completa y tenga los permisos correctos. - Error 500: Suele ser un problema de configuración de PHP o de un módulo incompatible. Activa el modo debug de PrestaShop para ver el error exacto.
[TIP] Activa el modo debug de PrestaShop editando el archivo
app/config/defines.inc.phpy cambiando_PS_MODE_DEV_atrue. Esto te mostrará los errores en pantalla en lugar de una página en blanco. Recuerda volver a cambiarlo afalsecuando termines.
Fase 6: El cambio final y la limpieza
Una vez que todo funciona perfectamente, es hora del gran paso.
6.1. Cambia los DNS de tu dominio
Ve a tu registrador de dominios (donde compraste tu dominio) y cambia los servidores DNS (Name Servers) para que apunten a los de tu nuevo hosting. Tu nuevo proveedor te los habrá proporcionado. Ten en cuenta que la propagación de DNS puede tardar desde unos minutos hasta 48 horas.
6.2. Desactiva el modo mantenimiento
Cuando veas que tu dominio ya apunta al nuevo servidor y tu tienda carga correctamente para ti, desactiva el modo mantenimiento en el Back Office de tu nueva tienda.
6.3. Cancela tu antiguo hosting (¡después de confirmar!)
No canceles tu antiguo hosting inmediatamente. Espera al menos una semana para asegurarte de que no hay problemas con el correo electrónico o con algún archivo que hayas olvidado. Una vez estés seguro, puedes cancelar el servicio.
Preguntas Frecuentes (FAQ) sobre la migración de PrestaShop
¿Cuánto tiempo tarda la propagación del DNS?
Normalmente entre 1 y 48 horas, aunque lo más común es que en unas pocas horas ya esté funcionando para la mayoría de usuarios.
¿Perderé mis posiciones en Google si cambio de hosting?
Si haces la migración correctamente, con URLs iguales y un tiempo de inactividad mínimo, no deberías perder posiciones. De hecho, si el nuevo hosting es más rápido, podrías incluso mejorar. Asegúrate de que tu certificado SSL esté activo y de que no haya errores 404. Puedes usar Google Search Console para monitorizar el proceso.
¿Qué hago si mi tienda es muy grande y no puedo exportar la base de datos?
Pide a tu nuevo proveedor de hosting que te ayude con la importación. Muchos ofrecen servicios de migración gratuitos o de pago que se encargan de todo por ti.
¿Es necesario cambiar mi dirección IP?
No, tu IP cambiará automáticamente al cambiar de servidor. Solo asegúrate de que tu dominio apunte a la nueva IP a través de los DNS.
¿Puedo migrar yo mismo sin conocimientos técnicos?
Sí, siguiendo esta guía y con un poco de paciencia, es totalmente posible. Sin embargo, si te sientes abrumado, siempre puedes contratar a un profesional o al servicio de migración de tu nuevo hosting.
¿Qué es Syspanel y cómo accedo?
Syspanel es un panel de control de hosting (similar a cPanel) que ofrecen algunos proveedores. Para acceder a él, debes ir a la URL que te proporcione tu hosting y usar el puerto 2106 (ej: https://tuhosting.com:2106).
**¿Qué pasa con mi correo electr
