Cómo migrar tu tienda PrestaShop a DirectAdmin: Guía paso a paso
Migrar tu tienda PrestaShop a un servidor con DirectAdmin puede parecer una tarea compleja, pero con la guía adecuada, es un proceso manejable incluso si no eres un experto técnico. En este artículo, te explicaré paso a paso cómo realizar esta migración de forma segura, minimizando el tiempo de inactividad y evitando errores comunes.
[INFO] Esta guía está diseñada para usuarios con conocimientos básicos de hosting. Si no te sientes cómodo con algunos pasos, siempre puedes consultar a tu proveedor de hosting o a un desarrollador.
¿Por qué migrar tu PrestaShop a DirectAdmin?
DirectAdmin es un panel de control de hosting muy popular por su interfaz limpia, su bajo consumo de recursos y su facilidad de uso. Migrar tu tienda PrestaShop a un servidor con DirectAdmin te dará más control sobre tu alojamiento, mejor rendimiento y, en muchos casos, un costo más bajo. Además, es una excelente opción si buscas un entorno estable para tu negocio online.
Preparación antes de la migración
Antes de empezar, es crucial que prepares todo para que la migración sea un éxito. No te saltes esta parte, ya que te ahorrará muchos dolores de cabeza.
Requisitos previos
Asegúrate de tener lo siguiente:
- Acceso a tu panel de control actual (cPanel, Plesk, Syspanel, etc.) para hacer las copias de seguridad.
- Acceso a DirectAdmin en tu nuevo servidor. Debes tener credenciales de administrador o de usuario con permisos suficientes.
- Credenciales FTP/SFTP tanto del servidor antiguo como del nuevo.
- Acceso a phpMyAdmin o similar en ambos servidores para gestionar las bases de datos.
- Una copia de seguridad reciente de tu tienda PrestaShop (archivos y base de datos).
[WARNING] No empieces la migración sin una copia de seguridad completa. Si algo sale mal, podrías perder datos importantes de tu tienda.
Paso 1: Haz una copia de seguridad completa de tu PrestaShop
Este es el paso más importante. Debes respaldar dos cosas: los archivos de tu tienda y la base de datos.
Copia de seguridad de archivos
- Accede a tu servidor antiguo mediante FTP (FileZilla, por ejemplo) o a través del administrador de archivos de tu panel.
- Localiza la carpeta donde está instalado PrestaShop (normalmente en
public_html,wwwo una subcarpeta). - Descarga toda la carpeta a tu ordenador. Esto puede tardar unos minutos si tu tienda tiene muchas imágenes o productos.
- Comprime la carpeta en un archivo ZIP o tar.gz para facilitar la subida posterior.
Copia de seguridad de la base de datos
- Entra a phpMyAdmin en tu servidor antiguo.
- Selecciona la base de datos de tu PrestaShop (normalmente tiene un nombre como
prestashop_xxx). - Haz clic en "Exportar" y elige el método rápido o personalizado (recomiendo exportar todas las tablas).
- Descarga el archivo SQL resultante. Guárdalo en un lugar seguro.
[TIP] Si tu base de datos es muy grande, puedes usar la opción "Comprimido" (gzip) para que el archivo pese menos.
Paso 2: Prepara el nuevo servidor en DirectAdmin
Ahora que tienes tu copia de seguridad, es hora de configurar el entorno en DirectAdmin.
Crea una cuenta de hosting (si no la tienes)
- Inicia sesión en DirectAdmin como administrador o usuario con permisos.
- Ve a "Gestión de cuentas" y selecciona "Crear nueva cuenta".
- Completa los datos: dominio (el mismo que usas para tu tienda), nombre de usuario, contraseña y paquete de hosting.
- Asegúrate de que el paquete incluya PHP 7.4 o superior, MySQL/MariaDB y suficiente espacio en disco.
Configura PHP y extensiones necesarias
PrestaShop requiere ciertas extensiones de PHP. En DirectAdmin, puedes configurarlas fácilmente:
- Ve a "Configuración de PHP" o "Selector de PHP" (dependiendo de la versión de DirectAdmin).
- Selecciona la versión de PHP (recomiendo 8.0 o 8.1 para PrestaShop 8.x).
- Activa las siguientes extensiones:
mysqli,gd,curl,mbstring,openssl,zip,xml,json,fileinfo,intl. - Guarda los cambios.
[INFO] Si tu tienda es antigua (PrestaShop 1.6 o 1.7), usa PHP 7.4 para mayor compatibilidad.
Crea la base de datos en DirectAdmin
- En DirectAdmin, ve a "Gestión de bases de datos" > "Crear nueva base de datos".
- Introduce un nombre para la base de datos (ej:
mitienda_presta). - Crea un usuario y una contraseña segura. Anota estos datos porque los necesitarás después.
- Asigna el usuario a la base de datos con todos los privilegios.
Paso 3: Sube los archivos de PrestaShop a DirectAdmin
Ahora toca transferir los archivos de tu tienda al nuevo servidor.
Sube la copia de seguridad
- Conéctate a DirectAdmin mediante FTP (puedes usar las credenciales de tu cuenta de hosting).
- Ve a la carpeta
domains>tudominio.com>public_html. - Si ya hay archivos (como una página por defecto), bórralos o muévelos a una carpeta temporal.
- Sube el archivo ZIP o tar.gz que comprimiste antes.
- Descomprime el archivo. En DirectAdmin, puedes hacerlo desde el administrador de archivos: selecciona el archivo y haz clic en "Extraer".
[WARNING] Asegúrate de que la carpeta
public_htmlcontenga directamente los archivos de PrestaShop (index.php, config, etc.), no una subcarpeta adicional.
Verifica la estructura de archivos
Después de descomprimir, comprueba que todos los archivos estén en su lugar. Si falta alguno, repite la subida.
Paso 4: Importa la base de datos
Con los archivos en su sitio, es hora de restaurar la base de datos.
- Accede a phpMyAdmin en DirectAdmin (lo encuentras en "Gestión de bases de datos" > "phpMyAdmin").
- Selecciona la base de datos que creaste antes.
- Haz clic en "Importar".
- Elige el archivo SQL que descargaste de tu servidor antiguo.
- Haz clic en "Continuar". Si el archivo es grande, puede tardar unos minutos.
[TIP] Si la importación falla por el tamaño del archivo, puedes dividirlo en partes más pequeñas o usar la línea de comandos (si tienes acceso SSH).
Paso 5: Configura el archivo parameters.php
PrestaShop guarda la configuración de la base de datos en el archivo app/config/parameters.php. Debes editarlo para que apunte a la nueva base de datos.
- En DirectAdmin, ve al administrador de archivos y navega a
public_html/app/config/. - Busca el archivo
parameters.phpy haz clic en "Editar". - Busca las líneas que empiezan con
'database_host','database_name','database_user'y'database_password'. - Cámbialas por los datos de tu nueva base de datos:
'database_host'→ Normalmentelocalhost(o la IP del servidor si es remoto).'database_name'→ El nombre que pusiste en DirectAdmin.'database_user'→ El usuario que creaste.'database_password'→ La contraseña de ese usuario.
- Guarda el archivo.
[WARNING] No olvides cambiar también la contraseña si era diferente. Un error aquí hará que tu tienda no cargue.
Paso 6: Ajusta la URL de la tienda (si es necesario)
Si cambiaste el dominio o la estructura de carpetas, debes actualizar la URL en la base de datos.
- En phpMyAdmin, selecciona tu base de datos.
- Busca la tabla
ps_configuration(ops_shop_urlsi usas PrestaShop 1.7+). - Localiza las filas con
PS_SHOP_DOMAINyPS_SHOP_DOMAIN_SSL. - Edítalas para que coincidan con tu dominio actual (ej:
mitienda.com). - Si tu tienda usa SSL (recomendado), asegúrate de que
PS_SSL_ENABLEDesté en "1".
Paso 7: Prueba la tienda antes de apuntar el dominio
Antes de cambiar los DNS, es buena idea probar que todo funciona en el nuevo servidor.
- Puedes acceder temporalmente a tu tienda usando la IP del servidor o un dominio temporal (si tu hosting lo permite).
- Ve a
http://IP-del-servidor/~tuusuario(en DirectAdmin, a veces se usahttp://IP-del-servidor:2222para el panel, pero no para la tienda). Consulta con tu proveedor. - Si todo está bien, verás tu tienda funcionando. Si no, revisa los pasos anteriores.
[INFO] Si tu tienda muestra errores, activa el modo debug de PrestaShop editando el archivo
config/defines.inc.phpy cambiando_PS_MODE_DEV_atrue. Así verás los mensajes de error.
Paso 8: Apunta el dominio al nuevo servidor
Una vez que la tienda funcione correctamente, es hora de cambiar los DNS.
- Ve al panel de control de tu registrador de dominios (donde compraste el dominio).
- Cambia los servidores DNS por los que te proporcionó tu nuevo hosting con DirectAdmin.
- Guarda los cambios. La propagación puede tardar desde unos minutos hasta 48 horas.
[TIP] Para minimizar el tiempo de inactividad, puedes reducir el TTL (Time To Live) de los registros DNS antes de la migración.
Paso 9: Verifica todo después de la migración
Cuando el dominio ya apunte al nuevo servidor, realiza estas comprobaciones:
- Página de inicio: Que cargue correctamente.
- Catálogo de productos: Que las imágenes y descripciones se vean bien.
- Carrito de compra: Añade un producto y prueba el proceso de pago (con un método de prueba).
- Módulos y temas: Que no haya errores de compatibilidad.
- Enlaces internos: Que no haya enlaces rotos (puedes usar herramientas como Screaming Frog).
- SSL: Si usas HTTPS, verifica que el certificado esté instalado y funcione.
[WARNING] Si tu tienda usaba módulos de pago o envío, verifica que las configuraciones (API keys, URLs) sigan siendo válidas.
Solución de problemas comunes
Aquí tienes algunas preguntas frecuentes que pueden surgir durante la migración.
¿Por qué mi tienda muestra un error de conexión a la base de datos?
Esto suele deberse a que los datos en parameters.php son incorrectos. Revisa el nombre de la base de datos, el usuario y la contraseña. También asegúrate de que el host sea localhost a menos que tu servidor use un host remoto.
¿Las imágenes de los productos no se ven?
Esto puede ocurrir si las rutas de las imágenes no se actualizaron. En PrestaShop, las imágenes se guardan en img/p y sus rutas están en la base de datos. Si moviste la tienda a una subcarpeta, necesitarás regenerar las imágenes desde el panel de administración (Parámetros de la tienda > Rendimiento > Regenerar miniaturas).
¿El carrito no funciona?
Puede ser un problema de cookies o de sesiones. Limpia la caché del navegador y prueba de nuevo. También verifica que la URL de la tienda esté bien configurada en ps_shop_url.
¿Cómo migrar desde Syspanel (HestiaCP)?
Si tu servidor antiguo usa Syspanel (anteriormente HestiaCP), el proceso es similar. La diferencia principal es que el acceso al panel de Syspanel es a través del puerto 2106 (ej: https://tudominio.com:2106). El resto de pasos (copias de seguridad, exportación de base de datos, etc.) son idénticos.
[INFO] Syspanel y DirectAdmin comparten muchas herramientas. Si vienes de Syspanel, la migración será muy fluida.
Consejos adicionales para una migración exitosa
- Haz la migración en horas de bajo tráfico para minimizar el impacto en tus clientes.
- Mantén el servidor antiguo activo hasta que verifiques que todo funciona en el nuevo.
- Actualiza PrestaShop si es necesario. A veces, una versión desactualizada puede dar problemas con PHP moderno.
- Usa una redirección 301 si cambias la estructura de URLs para no perder posicionamiento SEO.
- Configura las copias de seguridad automáticas en DirectAdmin para futuras migraciones o incidentes.
Conclusión
Migrar tu tienda PrestaShop a DirectAdmin no tiene por qué ser un dolor de cabeza. Siguiendo esta guía paso a paso, podrás transferir tus archivos y base de datos de forma segura, probar que todo funciona y apuntar tu dominio sin perder ventas. Recuerda siempre hacer copias de seguridad y tomarte tu tiempo para verificar cada paso.
Si encuentras algún problema, no dudes en consultar la documentación oficial de PrestaShop o de DirectAdmin, o contactar con tu proveedor de hosting. ¡Buena suerte con tu migración!
