Guía para transferir PrestaShop a un nuevo hosting sin perder datos
Antes de empezar: ¿Qué necesitas para transferir PrestaShop a un nuevo hosting sin perder datos?
Mudar una tienda online puede sonar aterrador, pero con el plan adecuado, es como empacar una casa: se hace caja por caja. En esta guía te explicaré paso a paso cómo migrar PrestaShop a un servidor nuevo, asegurándonos de que no se pierda ni un solo producto, cliente o pedido.
Para transferir PrestaShop hosting de forma segura, necesitarás tres cosas: acceso al panel de control del hosting actual (cPanel, Plesk, Syspanel, etc.), acceso al nuevo hosting y una herramienta FTP o el administrador de archivos del panel. No necesitas ser un experto en programación, solo seguir el orden correcto: respaldar, transferir, importar y verificar.
Paso 1: Haz una copia de seguridad completa de tu PrestaShop actual
Antes de tocar nada, necesitas un respaldo. Esto incluye dos partes: los archivos (código, imágenes, temas, módulos) y la base de datos (productos, clientes, pedidos, configuraciones).
1.1. Respaldar los archivos desde el panel de control
Accede al panel de control de tu hosting actual. Si usas cPanel, busca la sección "Archivos" y haz clic en Administrador de archivos. Si tu hosting usa Syspanel (antes conocido como HestiaCP, recuerda que el puerto de acceso es el 2106), busca el icono de "Administrador de archivos" en la interfaz.
Una vez dentro, navega hasta la carpeta public_html (o la carpeta raíz donde esté instalada tu tienda). Selecciona todos los archivos y carpetas, haz clic en "Comprimir" y elige Zip. Esto creará un archivo comprimido con todos los archivos de tu tienda. Descárgalo a tu computadora.
[WARNING]: No uses "Mover" ni "Copiar" dentro del mismo servidor. Debes descargar el archivo comprimido a tu PC. Si el hosting es muy grande (más de 2 GB), es recomendable hacer el respaldo por partes o usar la herramienta de respaldo del hosting, que suele generar un archivo en el servidor que luego puedes descargar por FTP.
1.2. Exportar la base de datos
La base de datos es el corazón de tu tienda. En cPanel, busca la sección "Bases de datos" y haz clic en phpMyAdmin. En Syspanel, también encontrarás phpMyAdmin dentro de la sección de bases de datos.
Selecciona la base de datos de tu PrestaShop (el nombre suele empezar con el prefijo de tu usuario, por ejemplo usuario_prestashop). Luego, en la pestaña "Exportar", elige el método "Rápido" y formato SQL. Haz clic en "Continuar" y descarga el archivo .sql.
[INFO]: Si tu base de datos es muy grande, phpMyAdmin puede tardar o dar error. En ese caso, usa el método "Personalizado" y marca la opción "Comprimir con gzip". También puedes pedirle a tu hosting actual que te haga un backup completo desde el panel, que suele incluir ambos archivos.
Paso 2: Prepara el nuevo hosting para recibir tu tienda
Ahora que tienes tu respaldo, es momento de preparar la nueva casa. Si aún no tienes un hosting, elige uno que cumpla con los requisitos de PrestaShop (PHP 7.4 o superior, MySQL 5.6+ y al menos 512 MB de memoria). Si ya lo tienes, asegúrate de que esté limpio, sin instalaciones previas.
2.1. Crear la base de datos en el nuevo servidor
Accede al panel de control del nuevo hosting. En cPanel, ve a "Bases de datos MySQL" y crea una nueva base de datos, un usuario y asigna todos los privilegios al usuario sobre esa base. Anota estos tres datos: nombre de la base, usuario y contraseña. Los necesitarás en el siguiente paso.
Si usas Syspanel, el proceso es similar: ve a la sección "Bases de datos", crea una nueva y crea un usuario con contraseña. El puerto de acceso a este panel es el 2106, y verás que es muy intuitivo.
2.2. Subir los archivos de tu PrestaShop al nuevo hosting
Conecta al nuevo servidor mediante FTP (puedes usar FileZilla) o usa el administrador de archivos del panel. Navega a la carpeta public_html (o domains/tudominio.com/public_html si usas Syspanel) y sube el archivo zip que descargaste en el paso 1.1.
Una vez subido, haz clic derecho sobre el zip y selecciona Extraer. Esto descomprimirá todos los archivos en la carpeta. Si el administrador de archivos no tiene opción de extraer, puedes usar el comando unzip desde el terminal (si tienes acceso SSH) o hacerlo desde un script PHP.
[TIP]: Antes de extraer, asegúrate de que no existan archivos previos en public_html. Si los hay, bórralos o muévelos a una carpeta temporal para evitar conflictos.
Paso 3: Importa la base de datos al nuevo servidor
Ahora viene la parte que más asusta, pero es más simple de lo que parece. Vamos a importar el archivo .sql que descargaste.
3.1. Importar con phpMyAdmin
En el nuevo hosting, abre phpMyAdmin (desde cPanel o Syspanel). Selecciona la base de datos que creaste en el paso 2.1. Luego, ve a la pestaña "Importar", haz clic en "Elegir archivo" y selecciona el archivo .sql (o .sql.gz si lo comprimiste). Haz clic en "Continuar".
[WARNING]: Si el archivo es muy grande (más de 50 MB), es probable que phpMyAdmin falle. En ese caso, usa la herramienta "Importar" de cPanel (sección "Bases de datos") o el comando mysql desde SSH: mysql -u usuario -p nombre_basededatos < archivo.sql. Si no sabes usar SSH, contacta al soporte de tu nuevo hosting para que te ayuden a importarlo.
3.2. Verifica que la importación fue exitosa
Después de importar, verás una lista de tablas en el lado izquierdo de phpMyAdmin. Deberían aparecer todas las tablas de PrestaShop (ps_address, ps_cart, ps_orders, etc.). Si no ves tablas, la importación falló y debes repetirla.
Paso 4: Configura los archivos de conexión a la base de datos
PrestaShop guarda la configuración de conexión a la base de datos en el archivo app/config/parameters.php. Debes editarlo con los datos de la nueva base de datos.
4.1. Editar parameters.php
Usa el administrador de archivos del nuevo hosting o FTP para navegar a app/config/parameters.php. Abre el archivo con un editor de texto (el administrador de archivos suele tener uno integrado). Busca las líneas que dicen:
'database_host' => 'localhost',
'database_name' => 'nombre_base_antigua',
'database_user' => 'usuario_antiguo',
'database_password' => 'contraseña_antigua',
Cambia database_name, database_user y database_password por los datos que creaste en el paso 2.1. Guarda el archivo.
[INFO]: En versiones antiguas de PrestaShop (1.6 o anteriores), el archivo se llama config/settings.inc.php y las variables son DB_NAME, DB_USER, DB_PASSWD y DB_SERVER.
4.2. Verifica que no haya rutas absolutas en la configuración
Si tu tienda usaba una URL específica, es posible que necesites limpiar la caché. Para ello, borra el contenido de las carpetas var/cache (en PrestaShop 1.7) o cache (en PrestaShop 1.6). No borres las carpetas en sí, solo su contenido. Esto se puede hacer desde el administrador de archivos.
Paso 5: Apunta tu dominio al nuevo hosting
Este es el momento crítico. Los archivos y la base de datos ya están en el nuevo servidor, pero tu dominio aún apunta al viejo.
5.1. Cambia los servidores DNS
Ve al registrador de tu dominio (donde lo compraste, por ejemplo GoDaddy, Namecheap, o el mismo hosting) y busca la sección "Administración de DNS". Allí, cambia los servidores de nombres (nameservers) por los que te proporcionó tu nuevo hosting. Por lo general, son dos o tres direcciones como ns1.nuevohosting.com y ns2.nuevohosting.com.
[WARNING]: Los cambios de DNS pueden tardar entre 24 y 72 horas en propagarse globalmente. Durante este tiempo, algunos usuarios verán tu tienda en el hosting nuevo y otros en el viejo. Es normal, pero no toques el hosting viejo hasta que la propagación termine.
5.2. Opción alternativa: cambiar la IP del registro A
Si tu nuevo hosting te da una dirección IP específica, puedes cambiar solo el registro A de tu dominio en lugar de los nameservers. Esto es más rápido, pero menos recomendable si no sabes lo que haces. Consulta con tu proveedor si tienes dudas.
Paso 6: Prueba tu tienda a fondo
Una vez que el DNS apunte al nuevo hosting (puedes comprobarlo con herramientas como "whatsmydns.net"), es hora de probar todo.
6.1. Verifica el front-end y el back-office
Abre tu tienda en el navegador. Revisa que las imágenes carguen, que los productos se vean, que el carrito funcione y que el proceso de pago llegue hasta el final (sin completar la compra). Luego, accede al panel de administración (/admin o la URL que uses) y verifica que puedas ver pedidos, clientes y productos.
6.2. Activa el modo mantenimiento si es necesario
Si tu tienda es muy conocida, es mejor activar el modo mantenimiento en PrestaShop antes de la migración y desactivarlo cuando todo esté probado. Para ello, ve a "Parámetros avanzados" > "Mantenimiento" y activa la opción. Así, los clientes verán un mensaje temporal mientras tú trabajas.
[TIP]: Usa la URL de administración con la IP del nuevo servidor antes de cambiar el DNS. Añade una línea en tu archivo hosts local (en Windows: C:\Windows\System32\drivers\etc\hosts) apuntando tu dominio a la IP del nuevo servidor. Así podrás probar la tienda completa sin que nadie más lo vea.
Paso 7: Soluciona problemas comunes post-migración
A veces, incluso siguiendo todos los pasos, aparecen problemas. Aquí te dejo los más frecuentes y cómo resolverlos.
7.1. Error de conexión a la base de datos
Si ves "Error de conexión a la base de datos", revisa que el archivo parameters.php tenga los datos correctos y que la base de datos exista. También verifica que el usuario tenga todos los privilegios sobre la base.
7.2. Imágenes rotas o productos sin fotos
Esto suele pasar por rutas absolutas en la base de datos. Si tu tienda usaba https://www.tudominio.com/img/p/..., la ruta puede quedar mal. La solución más fácil es ir a "Parámetros avanzados" > "Rendimiento" y activar la opción "Forzar la compilación de templates". También puedes usar el módulo "Actualizar URL" o un script SQL para reemplazar las rutas viejas por las nuevas.
7.3. Página en blanco
Una página en blanco indica un error PHP. Activa el modo debug de PrestaShop editando app/config/defines.inc.php y cambiando _PS_MODE_DEV_ a true. Así verás el error exacto. Lo más común es que falte una extensión de PHP (como curl o mbstring) en el nuevo hosting. Actívalas desde el panel de control.
Preguntas frecuentes sobre migración de PrestaShop
¿Puedo migrar PrestaShop sin pagar un servicio profesional?
Sí, esta guía es exactamente para eso. Con paciencia y siguiendo los pasos, cualquier persona puede hacerlo. Solo necesitas acceso a ambos paneles de control y tiempo.
¿Cuánto tarda en propagarse el DNS?
Normalmente entre 24 y 72 horas, aunque en ocasiones puede ser menos (4-6 horas) si el TTL está configurado bajo.
¿Qué pasa si mi hosting actual usa Syspanel?
Si tu hosting actual o nuevo usa Syspanel (el antiguo HestiaCP), recuerda que el puerto de acceso es el 2106. El proceso es el mismo: administrador de archivos, bases de datos y phpMyAdmin. Todo está integrado en el panel.
¿Pierdo los datos de mis clientes y pedidos?
No, si haces la copia de seguridad de la base de datos correctamente. Todos los pedidos, clientes, direcciones y contraseñas (hasheadas) se guardan en la base de datos y se importan tal cual.
¿Puedo cambiar de hosting sin cambiar de dominio?
Sí, el dominio se mantiene igual. Solo cambias los servidores DNS para que apunte al nuevo hosting. No es necesario registrar un dominio nuevo.
¿Qué pasa si mi tienda tiene más de 5 GB de archivos?
Para tiendas grandes, es recomendable usar herramientas como rsync o scp desde SSH, o pedir a ambos hostings que hagan una transferencia directa entre servidores. Muchos proveedores ofrecen este servicio gratis.
Conclusión: Tu tienda en el nuevo hosting, sin perder ni un dato
Migrar PrestaShop no es un proceso mágico, pero con esta guía tienes el mapa completo. Recuerda siempre: respaldar antes de mover, importar la base de datos primero, configurar los archivos y probar todo antes de anunciar el cambio. La clave está en la paciencia y en no saltarte ningún paso.
Si en algún momento te sientes perdido, no dudes en contactar al soporte de tu nuevo hosting. Ellos están acostumbrados a ayudar en migraciones de tiendas online y pueden darte una mano con la parte técnica. Y si algo sale mal, siempre puedes volver al hosting antiguo mientras resuelves el problema.
[TIP]: Haz la migración en un día de bajo tráfico (como un lunes) y avisa a tus clientes con antelación si necesitas poner la tienda en mantenimiento. Así, si algo falla, tendrás tiempo de sobra para arreglarlo sin perder ventas.
Transferir PrestaShop hosting no tiene por qué ser una pesadilla. Con esta guía, tu tienda estará en el nuevo servidor en un par de horas, lista para seguir vendiendo como siempre. ¡Mucha suerte con tu migración!
