Guía para migrar PrestaShop a DirectAdmin con éxito
Mudar tu tienda PrestaShop a un nuevo servidor puede parecer una tarea titánica, pero con la guía adecuada y las herramientas correctas, el proceso es mucho más sencillo de lo que imaginas. En este artículo, te explicaremos paso a paso cómo realizar una migrar PrestaShop DirectAdmin de forma segura y sin perder datos. Ya sea que estés cambiando de proveedor de hosting o buscando un mejor rendimiento, esta guía de migración PrestaShop te ayudará a transferir PrestaShop DirectAdmin sin complicaciones.
Antes de empezar, ten en cuenta que DirectAdmin es un panel de control muy popular y amigable. Si vienes de otro panel como cPanel o Plesk, notarás que la estructura es similar. El objetivo es que al finalizar, tu tienda funcione exactamente igual que antes, pero en su nuevo hogar.
Requisitos previos para la migración
Antes de lanzarte a DirectAdmin PrestaShop mover, asegúrate de tener todo lo siguiente a mano. Esto evitará dolores de cabeza a mitad del proceso.
Acceso a ambos servidores
Necesitarás credenciales de acceso tanto para el servidor de origen (donde está tu PrestaShop actual) como para el servidor de destino (donde está instalado DirectAdmin). Asegúrate de tener:
- Usuario y contraseña de FTP o SFTP.
- Acceso a phpMyAdmin o cualquier gestor de bases de datos.
- Acceso al panel de control de tu hosting actual.
- Acceso a DirectAdmin en el nuevo servidor.
Herramientas recomendadas
Para migrar PrestaShop DirectAdmin de forma eficiente, te sugerimos usar:
- FileZilla (cliente FTP gratuito) para transferir archivos.
- phpMyAdmin para exportar e importar la base de datos.
- Un editor de texto plano (como Notepad++ o Sublime Text) para modificar archivos de configuración.
[INFO] Si tu servidor de origen usa cPanel, puedes usar la opción de "Backup" para generar un archivo comprimido de todo el sitio. Luego, en DirectAdmin, usa la herramienta "Restore Backup". Esto simplifica mucho el proceso.
Copia de seguridad completa
Este es el paso más importante. Antes de tocar nada, realiza una copia de seguridad completa de tu tienda actual. Esto incluye:
- Todos los archivos de la instalación de PrestaShop.
- La base de datos completa.
- Cualquier personalización o módulo adicional.
Guarda esta copia en tu computadora local o en un servicio de almacenamiento en la nube. Así, si algo sale mal, siempre podrás volver al estado original.
Paso 1: Preparar el servidor de destino (DirectAdmin)
El primer paso para transferir PrestaShop DirectAdmin es tener el entorno listo. DirectAdmin debe tener los requisitos necesarios para ejecutar PrestaShop.
Requisitos de sistema para PrestaShop
PrestaShop 1.7 y versiones superiores requieren:
- PHP 7.1 o superior (recomendamos PHP 7.4 u 8.0 para mejor rendimiento).
- MySQL 5.6 o superior (o MariaDB 10.1+).
- Apache con mod_rewrite habilitado.
- Extensiones PHP:
curl,gd,json,mbstring,openssl,pdo_mysql,xml,zip.
En DirectAdmin, puedes gestionar estas opciones desde el panel de control. Ve a "Account Manager" > "PHP Settings" y selecciona la versión de PHP que necesites. Luego, asegúrate de que las extensiones estén activadas.
Crear la base de datos
Necesitarás una base de datos vacía para tu tienda. En DirectAdmin:
- Ve a "MySQL Management".
- Crea una nueva base de datos (por ejemplo,
tienda_prestashop). - Crea un usuario para esa base de datos y asígnale todos los privilegios.
- Anota el nombre de la base de datos, el usuario y la contraseña. Los necesitarás más adelante.
Crear el dominio y la carpeta
Si tu tienda usará un dominio nuevo, crea un dominio en DirectAdmin desde "Domain Setup". Si vas a usar un dominio existente, asegúrate de que los DNS apunten al nuevo servidor (esto puede tardar hasta 48 horas en propagarse).
Luego, crea una carpeta para los archivos de PrestaShop. Normalmente, la carpeta public_html es la raíz del dominio, pero puedes subdominios o subcarpetas.
[TIP] Para evitar problemas de tiempo de inactividad, puedes trabajar con un dominio temporal o una URL de prueba (por ejemplo,
tudominio.com/prueba) mientras los DNS se propagan.
Paso 2: Exportar la base de datos desde el servidor antiguo
La base de datos contiene toda la información de tu tienda: productos, clientes, pedidos, configuraciones, etc. Es fundamental exportarla correctamente.
Acceder a phpMyAdmin
En tu servidor de origen, accede a phpMyAdmin (normalmente desde el panel de control de tu hosting). Busca la base de datos de tu PrestaShop.
Exportar la base de datos
- Selecciona la base de datos de tu tienda.
- Ve a la pestaña "Exportar".
- Elige el método "Rápido" y formato SQL.
- Haz clic en "Continuar" y descarga el archivo
.sqla tu computadora.
[WARNING] Si tu base de datos es muy grande (más de 100 MB), es posible que el exportador de phpMyAdmin falle. En ese caso, usa la herramienta de línea de comandos
mysqldumpo un plugin de backup de PrestaShop.
Alternativa: usar módulos de backup
Existen módulos de PrestaShop que te permiten hacer una copia de seguridad de la base de datos directamente desde el panel de administración. Por ejemplo, "PrestaShop Backup" o "My Backup". Son útiles si no tienes acceso a phpMyAdmin.
Paso 3: Transferir los archivos de PrestaShop a DirectAdmin
Ahora toca migrar PrestaShop DirectAdmin moviendo los archivos de tu tienda al nuevo servidor.
Conectar con FileZilla
- Abre FileZilla y conecta al servidor de destino (DirectAdmin) usando FTP o SFTP. Necesitarás el usuario, contraseña y la dirección del servidor (por ejemplo,
tudominio.como la IP del servidor). - En el panel izquierdo, navega hasta la carpeta donde tienes los archivos de tu tienda en tu computadora (o en el servidor de origen).
- En el panel derecho, ve a la carpeta de destino (por ejemplo,
public_html).
Subir los archivos
Selecciona todos los archivos y carpetas de PrestaShop y arrastra al panel derecho. La transferencia puede tardar varios minutos, dependiendo del tamaño de tu tienda (módulos, imágenes, temas, etc.).
[TIP] Para acelerar la transferencia, puedes comprimir todos los archivos en un ZIP en el servidor de origen, descargar el ZIP y luego subirlo a DirectAdmin. Luego, descomprime el ZIP usando el administrador de archivos de DirectAdmin.
Verificar la integridad
Una vez subidos todos los archivos, verifica que no falte ninguno. Revisa especialmente las carpetas img, modules, themes y override. Si tu tienda tiene muchos productos, la carpeta img puede ser enorme.
Paso 4: Importar la base de datos en DirectAdmin
Con los archivos ya en el servidor de destino, es hora de importar la base de datos.
Acceder a phpMyAdmin en DirectAdmin
En DirectAdmin, ve a "MySQL Management" y haz clic en "phpMyAdmin". Se abrirá una nueva ventana con el gestor de bases de datos.
Importar el archivo SQL
- Selecciona la base de datos que creaste anteriormente (debe estar vacía).
- Ve a la pestaña "Importar".
- Haz clic en "Seleccionar archivo" y elige el archivo
.sqlque descargaste. - Haz clic en "Continuar" y espera a que termine la importación.
[WARNING] Si el archivo SQL es muy grande, es posible que el tiempo de ejecución se agote. En ese caso, puedes dividir el archivo en partes más pequeñas o usar la línea de comandos con
mysql -u usuario -p basededatos < archivo.sql.
Verificar la importación
Revisa que las tablas se hayan creado correctamente. Deberías ver decenas de tablas con prefijos como ps_ (o el que hayas configurado).
Paso 5: Configurar el archivo settings.inc.php
Este es un paso crítico para que DirectAdmin PrestaShop mover funcione correctamente. El archivo app/config/parameters.php (en PrestaShop 1.7+) contiene la configuración de conexión a la base de datos.
Localizar el archivo
Usando FileZilla o el administrador de archivos de DirectAdmin, navega hasta la carpeta raíz de tu tienda y busca el archivo:
- Para PrestaShop 1.7+:
/app/config/parameters.php - Para PrestaShop 1.6:
/config/settings.inc.php
Editar las credenciales
Abre el archivo con un editor de texto (como Notepad++). Busca las líneas que contienen:
'database_host'(normalmentelocalhosto127.0.0.1)'database_name'(el nombre de la base de datos que creaste)'database_user'(el usuario que creaste)'database_password'(la contraseña del usuario)
Cambia estos valores por los que anotaste en el paso 1. Guarda el archivo.
[TIP] Si tu servidor de destino usa un host de base de datos diferente (por ejemplo, una IP), asegúrate de cambiarlo también. Normalmente, en DirectAdmin, el host es
localhost.
Verificar la ruta base
Además, asegúrate de que la variable 'PS_CIPHER_ALGORITHM' o _DB_PREFIX_ esté correcta. Si tu tienda usaba un prefijo de tabla personalizado, debe coincidir con el de la base de datos importada.
Paso 6: Ajustar la configuración del servidor
Para que tu tienda funcione sin problemas, necesitas hacer algunos ajustes en DirectAdmin.
Habilitar mod_rewrite
PrestaShop utiliza URLs amigables que requieren mod_rewrite de Apache. En DirectAdmin:
- Ve a "Apache Manager" (o "Custom HTTP Config").
- Asegúrate de que el módulo
mod_rewriteesté habilitado. Si no aparece, contacta a tu proveedor de hosting. - También puedes agregar reglas personalizadas en el archivo
.htaccessde tu tienda.
Configurar PHP
Ve a "PHP Settings" y selecciona la versión de PHP que necesitas. Luego, ajusta los límites de memoria y tiempo de ejecución:
memory_limit= 256M o másmax_execution_time= 300upload_max_filesize= 64Mpost_max_size= 64M
Activar el caché y rendimiento
En el panel de administración de PrestaShop (una vez que funcione), ve a "Parámetros avanzados" > "Rendimiento" y activa las opciones de caché y compresión. Esto mejorará la velocidad de tu tienda.
Paso 7: Probar la tienda y solucionar problemas
Una vez que hayas completado todos los pasos anteriores, es hora de probar tu tienda.
Acceder a la URL
Abre tu navegador y escribe la URL de tu tienda (por ejemplo, tudominio.com). Si todo está bien, deberías ver la página principal de tu tienda.
Verificar el panel de administración
Accede al panel de administración (normalmente tudominio.com/adminXXXXXX). Si no puedes acceder, revisa que la URL de administración coincida con la que tenías antes.
Errores comunes y soluciones
- Error de conexión a la base de datos: Revisa el archivo
parameters.phposettings.inc.php. Asegúrate de que el host, usuario y contraseña sean correctos. - Página en blanco: Activa la depuración de PHP en PrestaShop. En
config/defines.inc.php, cambia_PS_MODE_DEV_atrue. Esto mostrará los errores. - Enlaces rotos o imágenes: Si las imágenes no se muestran, es posible que las rutas de archivos estén mal. Regenera las miniaturas desde el panel de administración ("Mejorar" > "Imágenes" > "Regenerar miniaturas").
- Módulos que no funcionan: Algunos módulos pueden depender de rutas absolutas o de configuraciones específicas del servidor. Reinstálalos o contacta al desarrollador.
[INFO] Si tu tienda usa SSL (HTTPS), asegúrate de que el certificado SSL esté instalado en DirectAdmin. Puedes usar Let's Encrypt de forma gratuita desde el panel.
Paso 8: Migrar el dominio y los DNS
Si ya probaste que todo funciona correctamente con una URL temporal, es momento de apuntar tu dominio real al nuevo servidor.
Cambiar los DNS
Ve al panel de control de tu registrador de dominios (donde compraste el dominio) y cambia los servidores DNS por los que te proporcionó tu nuevo hosting. Esto puede tardar entre 24 y 48 horas en propagarse.
Redireccionar tráfico
Mientras los DNS se propagan, puedes configurar una redirección temporal desde tu servidor antiguo al nuevo. Por ejemplo, usando un .htaccess con reglas de redirección 301.
Actualizar la URL en PrestaShop
Si cambiaste el dominio, ve al panel de administración de PrestaShop, a "Parámetros avanzados" > "Multitienda" y actualiza la URL de la tienda principal.
Preguntas frecuentes (FAQ)
¿Puedo migrar PrestaShop a DirectAdmin sin perder los pedidos?
Sí, siempre y cuando exportes la base de datos correctamente y la importes sin errores. Todos los datos de clientes, pedidos y productos se conservan.
¿Qué hago si mi base de datos es muy grande para phpMyAdmin?
Usa la herramienta de línea de comandos mysqldump para exportar y mysql para importar. También puedes usar módulos de backup de PrestaShop que comprimen la base de datos.
¿Necesito cambiar la versión de PHP?
PrestaShop 1.7 requiere PHP 7.1 o superior. DirectAdmin te permite seleccionar la versión de PHP fácilmente. Si tu versión anterior era más antigua, actualiza los módulos y el tema para que sean compatibles.
¿Se perderán las imágenes de los productos?
No, siempre que copies la carpeta img completa. Si las imágenes no se muestran, regenera las miniaturas desde el panel de administración.
¿Puedo migrar mi tienda sin interrumpir el servicio?
Idealmente, debes poner la tienda en modo mantenimiento durante la migración. Puedes activar el modo mantenimiento en PrestaShop (Parámetros avanzados > Mantenimiento) y luego desactivarlo cuando todo esté listo.
¿Qué hago si recibo un error 500 después de la migración?
Activa el modo de depuración de PrestaShop (cambia _PS_MODE_DEV_ a true en config/defines.inc.php). También revisa los logs de error de DirectAdmin en "Error Log" dentro del panel.
¿Syspanel (HestiaCP) es compatible con esta guía?
Si tu servidor usa Syspanel (HestiaCP), el proceso es similar. Solo recuerda que el puerto de acceso al panel es el 2106. La estructura de carpetas y las herramientas son análogas a DirectAdmin.
Conclusión
Migrar PrestaShop DirectAdmin no tiene por qué ser un dolor de cabeza. Siguiendo esta guía paso a paso, podrás transferir PrestaShop DirectAdmin de manera segura, manteniendo todos tus datos y configuraciones. Recuerda siempre hacer una copia de seguridad antes de empezar y probar todo en un entorno temporal antes de cambiar los DNS.
Si encuentras algún problema, no dudes en consultar la documentación oficial de PrestaShop o contactar al
