Cómo migrar PrestaShop de un servidor a otro usando DirectAdmin
Mover una tienda PrestaShop de un servidor a otro puede parecer una tarea compleja, pero si sigues los pasos adecuados, es un proceso bastante sencillo. En esta guía, te explicaré cómo realizar una migración de PrestaShop usando el panel de control DirectAdmin. El objetivo es que puedas transferir PrestaShop sin perder datos, sin errores y con el mínimo tiempo de inactividad.
Este artículo está pensado para ti, que tienes una tienda online y necesitas cambiarla de hosting. No necesitas ser un experto técnico, solo seguir las instrucciones al pie de la letra. Vamos a dividir el proceso en fases claras: preparación, backup, transferencia y restauración.
Preparación antes de migrar PrestaShop
Antes de empezar con la migración, es fundamental que tengas todo listo para evitar sorpresas. La preparación es la clave para que la migración tienda PrestaShop sea un éxito.
Requisitos previos
Asegúrate de cumplir con estos puntos:
- Acceso a DirectAdmin en el servidor origen (donde está tu tienda actual).
- Acceso a DirectAdmin en el servidor destino (donde quieres mover la tienda).
- Datos de FTP o acceso a File Manager en ambos servidores.
- Acceso a phpMyAdmin (o herramienta similar) para gestionar bases de datos.
- Versiones compatibles: Verifica que la versión de PHP y MySQL en el servidor destino sea compatible con tu versión de PrestaShop. Por ejemplo, PrestaShop 1.7 necesita PHP 7.1 o superior.
[TIP] Si no estás seguro de la compatibilidad, consulta la documentación oficial de PrestaShop o contacta con tu proveedor de hosting.
Identifica los datos de tu tienda actual
Antes de migrar, necesitas saber:
- Ubicación de los archivos: Normalmente en
/public_htmlo una subcarpeta. - Nombre de la base de datos y usuario con permisos.
- Versión de PrestaShop (puedes verlo en el back office: Parámetros de la tienda > Información).
Elige el método de transferencia
Puedes usar DirectAdmin de dos formas:
- A través del File Manager: Ideal para sitios pequeños (menos de 500 MB).
- A través de FTP/SFTP: Recomendado para sitios grandes o con muchos archivos.
En esta guía usaremos ambos, pero el proceso es similar.
Paso 1: Hacer un backup completo de tu PrestaShop
El primer paso para migrar PrestaShop es crear una copia de seguridad completa. Esto incluye archivos y base de datos.
Backup de los archivos desde DirectAdmin
- Accede a DirectAdmin del servidor origen.
- Ve a File Manager y navega hasta la carpeta donde está tu tienda (normalmente
public_htmlopublic_html/tienda). - Selecciona todos los archivos y carpetas (Ctrl+A o Cmd+A).
- Haz clic en Comprimir y elige formato ZIP o TAR.GZ.
- Descarga el archivo comprimido a tu computadora.
[WARNING] Si tu tienda es muy grande (varios GB), la compresión puede tardar. Mejor usa FTP para descargar los archivos por partes.
Backup de la base de datos desde DirectAdmin
- En DirectAdmin, busca la sección MySQL Management o phpMyAdmin.
- Selecciona la base de datos de tu PrestaShop (la que aparece en el archivo
app/config/parameters.php). - Haz clic en Exportar.
- Elige formato SQL y marca "Agregar DROP TABLE / VIEW / PROCEDURE / FUNCTION".
- Haz clic en Continuar y descarga el archivo
.sql.
[INFO] Guarda ambos archivos (ZIP de archivos y SQL de base de datos) en una carpeta segura. Son tu salvavidas.
Paso 2: Preparar el servidor destino en DirectAdmin
Ahora necesitas crear el espacio para tu tienda en el nuevo servidor.
Crear una cuenta de hosting (si no la tienes)
- En DirectAdmin del servidor destino, ve a User Management > Create User.
- Rellena los datos: dominio, nombre de usuario, contraseña, etc.
- Asegúrate de que el Plan de hosting tenga suficiente espacio y recursos.
Crear la base de datos vacía
- Ve a MySQL Management > Create Database.
- Ponle un nombre (ej:
tienda_nueva_db). - Crea un usuario para la base y asigna todos los permisos.
- Anota el nombre de la base, el usuario y la contraseña. Los necesitarás después.
Paso 3: Transferir los archivos de PrestaShop
Llegó el momento de transferir PrestaShop al nuevo servidor. Puedes hacerlo de dos maneras.
Opción A: Subir archivos comprimidos usando File Manager
- En DirectAdmin destino, ve a File Manager y abre la carpeta
public_html(o la carpeta raíz de tu dominio). - Haz clic en Subir y selecciona el archivo ZIP que descargaste.
- Una vez subido, selecciona el archivo y haz clic en Extraer.
- Asegúrate de que los archivos queden en la raíz (no dentro de una subcarpeta).
Opción B: Usar FTP (recomendado para sitios grandes)
- Usa un cliente FTP (como FileZilla) con los datos de acceso del servidor destino.
- Conéctate y navega hasta
public_html. - Sube todos los archivos de tu tienda desde tu computadora.
- Verifica que la transferencia esté completa (compara tamaño de carpetas).
[TIP] Si usas FTP, activa la transferencia en modo binario para evitar corrupción de archivos.
Paso 4: Importar la base de datos al servidor destino
Ahora toca restaurar la base de datos en el nuevo servidor.
- En DirectAdmin destino, ve a phpMyAdmin.
- Selecciona la base de datos que creaste (vacía).
- Haz clic en Importar.
- Selecciona el archivo
.sqlque descargaste. - Haz clic en Continuar y espera a que termine.
[WARNING] Si la base de datos es muy grande, puede dar error de tiempo de espera. En ese caso, usa la línea de comandos o pide ayuda a tu hosting.
Paso 5: Configurar la conexión a la base de datos
PrestaShop guarda los datos de conexión en un archivo llamado app/config/parameters.php. Debes editarlo para que apunte a la nueva base de datos.
- En DirectAdmin destino, ve a File Manager y navega hasta
public_html/app/config/. - Busca el archivo
parameters.php. - Haz clic derecho y selecciona Edit.
- Busca estas líneas y cámbialas por los datos de tu nueva base de datos:
'database_host' => 'localhost',
'database_name' => 'tu_nueva_base',
'database_user' => 'tu_nuevo_usuario',
'database_password' => 'tu_nueva_contraseña',
- Guarda el archivo.
[INFO] Normalmente el host es
localhost, pero si tu hosting usa un servidor de base de datos externo, cámbialo por la IP o nombre que te den.
Paso 6: Ajustar la URL de la tienda (si cambia el dominio)
Si vas a usar el mismo dominio, no necesitas hacer nada. Pero si cambias de dominio (por ejemplo, de tiendavieja.com a tiendanueva.com), debes actualizarlo.
Opción 1: Desde el back office (si puedes acceder)
- Accede a tu tienda con la URL temporal (si tu hosting la proporciona) o con el dominio nuevo.
- Ve a Parámetros de la tienda > Tráfico y SEO.
- Cambia las URL de la tienda y la URL de SSL (si aplica).
- Guarda los cambios.
Opción 2: Desde la base de datos (más seguro)
- En phpMyAdmin del servidor destino, selecciona tu base de datos.
- Ejecuta esta consulta SQL (reemplaza
dominionuevo.compor tu dominio real):
UPDATE ps_configuration SET value = 'https://dominionuevo.com' WHERE name IN ('PS_SHOP_DOMAIN', 'PS_SHOP_DOMAIN_SSL');
- También actualiza la tabla
ps_shop_url:
UPDATE ps_shop_url SET domain = 'dominionuevo.com', domain_ssl = 'dominionuevo.com';
[WARNING] Si tu PrestaShop tiene el prefijo de tabla personalizado (por ejemplo,
prestashop_), cambiaps_por ese prefijo.
Paso 7: Verificar la migración y solucionar problemas comunes
Una vez que todo está configurado, accede a tu tienda desde el nuevo dominio. Deberías verla funcionando.
Pruebas básicas
- Página de inicio: ¿carga correctamente?
- Catálogo: ¿se ven los productos?
- Carrito: ¿puedes agregar productos?
- Back office: ¿puedes iniciar sesión?
Problemas frecuentes y soluciones
Error 500 (Internal Server Error)
- Revisa los permisos de archivos: las carpetas deben tener 755 y los archivos 644.
- En DirectAdmin, selecciona todos los archivos, haz clic en Change Permissions y ajústalos.
Error de conexión a la base de datos
- Verifica que los datos en
parameters.phpsean correctos. - Asegúrate de que el usuario de la base tenga permisos completos.
Páginas en blanco
- Activa el modo debug de PrestaShop editando
config/defines.inc.phpy cambiando_PS_MODE_DEV_atrue. - Así verás el error real.
Imágenes rotas
- Regenera las miniaturas desde el back office: Parámetros avanzados > Rendimiento > Regenerar miniaturas.
[TIP] Si tienes problemas con el módulo de pago o envío, verifica que las claves API o tokens sigan siendo válidos en el nuevo servidor.
Preguntas frecuentes (FAQ) sobre migrar PrestaShop
¿Cuánto tiempo tarda la migración?
Depende del tamaño de tu tienda y la velocidad de tu conexión. Una tienda pequeña (1 GB) puede tardar entre 15 y 30 minutos. Una tienda grande (10 GB) puede llevar varias horas.
¿Pierdo los datos de clientes o pedidos?
No, si haces el backup correctamente. La migración transfiere todo: productos, clientes, pedidos, módulos, etc.
¿Necesito cambiar los DNS?
Si cambias de dominio, sí. Pero si solo cambias de servidor y mantienes el mismo dominio, solo debes apuntar los DNS al nuevo servidor (lo hace tu proveedor de hosting).
¿Qué hago si mi tienda usa SSL?
Asegúrate de tener un certificado SSL en el nuevo servidor. Puedes instalarlo desde DirectAdmin (sección SSL Certificates). Luego, actualiza la URL en PrestaShop para que use HTTPS.
¿Puedo migrar sin tiempo de inactividad?
Es posible si usas un método de migración en caliente, pero es más complejo. Para la mayoría de tiendas, es mejor programar la migración en un horario de bajo tráfico y poner la tienda en modo mantenimiento durante el proceso.
Conclusión
Migrar PrestaShop de un servidor a otro usando DirectAdmin es un proceso que, aunque requiere atención, está al alcance de cualquier persona que siga estos pasos. Recuerda siempre hacer un backup completo antes de empezar y verificar cada paso.
Si encuentras algún problema, no dudes en consultar la documentación de PrestaShop o contactar con el soporte de tu hosting. Con un poco de paciencia, tu tienda estará funcionando en el nuevo servidor sin problemas.
[TIP FINAL] Después de la migración, no olvides eliminar los archivos de backup del servidor destino para liberar espacio. Y si todo funciona bien, ¡felicidades! Has completado con éxito la migración de tu tienda PrestaShop.
