Migrar PrestaShop a otro servidor con DirectAdmin
Introducción: ¿Por qué migrar PrestaShop a un nuevo servidor con DirectAdmin?
Si estás leyendo esto, probablemente te enfrentas a la necesidad de migrar PrestaShop DirectAdmin a un nuevo servidor. Las razones pueden ser varias: tu tienda online ha crecido y necesitas más recursos, tu hosting actual es lento, o simplemente buscas un mejor proveedor. Sea cual sea el motivo, la migración de una tienda PrestaShop es un proceso delicado, pero no imposible. Con la herramienta de gestión DirectAdmin, el proceso se vuelve más ordenado y controlable.
En esta guía extensa, te explicaré paso a paso cómo realizar una transferencia PrestaShop de forma segura, sin perder datos de clientes, pedidos o productos. El enfoque será práctico, para que puedas seguirlo incluso si no eres un experto técnico. Cubriremos desde la preparación en el servidor antiguo hasta la configuración final en el nuevo servidor con DirectAdmin.
Preparación inicial: Lo que necesitas antes de migrar
Antes de empezar con la migrar PrestaShop DirectAdmin, es fundamental tener todo listo. No te saltes esta parte, ya que te ahorrará dolores de cabeza.
Requisitos básicos
- Acceso al panel de control antiguo (cPanel, Plesk, o el que uses).
- Acceso a DirectAdmin en el nuevo servidor.
- Datos de FTP o SFTP para ambos servidores.
- Acceso a phpMyAdmin o herramienta similar para gestionar bases de datos.
- Credenciales de la base de datos de PrestaShop (usuario, contraseña, nombre de la BD).
- Una copia de seguridad reciente de tu tienda (si ya la tienes, mejor).
Herramientas recomendadas
- Cliente FTP como FileZilla (gratuito y fácil de usar).
- Acceso SSH (opcional pero recomendado para mayor control).
- Gestor de bases de datos como Adminer o el propio phpMyAdmin.
Paso 1: Realizar una copia de seguridad completa en el servidor antiguo
El primer paso para cualquier transferencia PrestaShop es asegurarte de que tienes una copia íntegra de todos los archivos y la base de datos. No confíes solo en las copias automáticas de tu hosting.
Copia de los archivos (vía FTP o SSH)
- Conéctate a tu servidor antiguo mediante FTP (FileZilla, por ejemplo).
- Navega hasta la carpeta raíz donde está instalado PrestaShop (normalmente
public_htmlowww). - Selecciona todos los archivos y carpetas (incluyendo
.htaccess,config/,img/,modules/, etc.). - Descarga todo a una carpeta local en tu computadora. Esto puede tardar varios minutos si la tienda es grande.
[TIP] Si tu servidor tiene SSH, puedes comprimir la carpeta con un comando como
tar -czvf prestashop_backup.tar.gz /ruta/a/prestashopy luego descargar un solo archivo. Es más rápido.
Copia de la base de datos
- Accede a phpMyAdmin desde el panel de control antiguo.
- Selecciona la base de datos de PrestaShop.
- Ve a la pestaña Exportar.
- Elige el método Rápido y formato SQL.
- Haz clic en Continuar y descarga el archivo
.sql.
[WARNING] Asegúrate de que la exportación incluya todas las tablas. Si tu base de datos es muy grande, puede ser mejor usar la opción Personalizado y marcar "Agregar DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT".
Paso 2: Preparar el nuevo servidor con DirectAdmin
Ahora que tienes tu copia de seguridad, es momento de configurar el nuevo entorno. DirectAdmin es un panel potente, pero hay que preparar bien el terreno para una migrar PrestaShop DirectAdmin exitosa.
Crear el dominio y la cuenta de hosting
- Inicia sesión en DirectAdmin como administrador o usuario con permisos.
- Ve a Gestión de cuentas > Crear nueva cuenta.
- Introduce el nombre de dominio (ej.
tutienda.com), el nombre de usuario y la contraseña. - Selecciona el paquete de recursos adecuado (PHP, base de datos, etc.).
- Haz clic en Crear.
Configurar PHP y extensiones necesarias
PrestaShop requiere ciertas extensiones de PHP. Verifica que estén habilitadas:
- PHP 7.4 o 8.0 (recomendado para PrestaShop 1.7).
- Extensiones:
mysqli,gd,curl,mbstring,openssl,zip,json,xml,intl.
En DirectAdmin, puedes gestionar esto desde Configuración de PHP (a veces en Opciones avanzadas > Selector de PHP). Asegúrate de seleccionar la versión correcta y marcar las extensiones necesarias.
Crear la base de datos vacía
- En DirectAdmin, ve a Gestión de bases de datos > MySQL Management.
- Haz clic en Crear nueva base de datos.
- Introduce un nombre (ej.
prestashop_nueva) y una contraseña segura. - Anota el nombre de la base de datos, el usuario y la contraseña. Los necesitarás más adelante.
Paso 3: Subir los archivos de PrestaShop al nuevo servidor
Con el servidor listo, es hora de subir los archivos de tu tienda. Este es un paso crítico en la transferencia PrestaShop.
Subir vía FTP
- Conéctate al nuevo servidor mediante FTP (usa la IP o dominio temporal si no está propagado).
- Navega a la carpeta
domains/tudominio.com/public_html/(o similar, según la estructura de DirectAdmin). - Sube todos los archivos y carpetas que descargaste antes. Reemplaza cualquier archivo existente.
- Asegúrate de que los permisos de carpetas y archivos sean correctos: las carpetas deben tener permisos
755y los archivos644. DirectAdmin suele aplicar esto automáticamente, pero verifica.
[INFO] Si tu tienda tiene muchas imágenes, la subida puede ser lenta. Usa un cliente FTP que permita reanudar transferencias por si hay cortes.
Verificar la estructura de archivos
Después de subir, comprueba que la carpeta config/ existe y contiene el archivo settings.inc.php. Este archivo guarda la configuración de conexión a la base de datos. Lo modificaremos en el siguiente paso.
Paso 4: Importar la base de datos en el nuevo servidor
Ahora vamos a cargar los datos de tu tienda en la base de datos que creaste en DirectAdmin.
Importar vía phpMyAdmin
- Accede a phpMyAdmin desde DirectAdmin (suele estar en Gestión de bases de datos > phpMyAdmin).
- Selecciona la base de datos vacía que creaste.
- Ve a la pestaña Importar.
- Haz clic en Seleccionar archivo y elige el archivo
.sqlde tu copia. - Haz clic en Continuar. La importación puede tardar varios minutos si la base de datos es grande.
[WARNING] Si el archivo SQL es muy grande (más de 50 MB), es posible que phpMyAdmin tenga límites. En ese caso, usa la línea de comandos o una herramienta como BigDump. Si tienes acceso SSH, puedes usar:
mysql -u usuario -p nombre_bd < archivo.sql.
Verificar la importación
Después de la importación, revisa que todas las tablas estén presentes. Deberías ver decenas de tablas con prefijos como ps_, ps_shop, etc.
Paso 5: Configurar la conexión a la base de datos en PrestaShop
Este es el paso más delicado. Debes editar el archivo config/settings.inc.php para que PrestaShop sepa cómo conectarse a la nueva base de datos.
Editar settings.inc.php
- Conéctate al nuevo servidor vía FTP.
- Navega a
public_html/config/. - Descarga el archivo
settings.inc.php(o edítalo directamente en línea con un editor de texto). - Busca las siguientes líneas y cámbialas por los datos de tu nueva base de datos:
define('_DB_SERVER_', 'localhost'); // Normalmente 'localhost' en DirectAdmin
define('_DB_NAME_', 'nombre_de_tu_base_de_datos');
define('_DB_USER_', 'usuario_de_la_base');
define('_DB_PASSWD_', 'contraseña_de_la_base');
define('_DB_PREFIX_', 'ps_'); // Este debe coincidir con el prefijo original
- Guarda el archivo y súbelo de nuevo (si lo editaste localmente).
[TIP] Si no sabes el prefijo de las tablas, revisa la base de datos importada: las tablas suelen empezar con
ps_oprestashop_.
Verificar la conexión
Ahora intenta acceder a tu tienda desde el navegador. Si todo está bien, verás la página principal. Si aparece un error de conexión a la base de datos, revisa que los datos sean correctos y que el usuario tenga permisos sobre la base de datos.
Paso 6: Ajustar la configuración de la tienda en DirectAdmin
Después de la migrar PrestaShop DirectAdmin, hay que hacer algunos ajustes para que todo funcione correctamente.
Cambiar la URL de la tienda (si es necesario)
Si el dominio aún no está apuntando al nuevo servidor, es posible que necesites usar una URL temporal. En PrestaShop, la URL base se guarda en la base de datos.
- Accede a phpMyAdmin en el nuevo servidor.
- Selecciona la base de datos de PrestaShop.
- Ejecuta la siguiente consulta SQL (reemplaza
tudominio.compor tu dominio real):
UPDATE ps_configuration SET value = 'https://tudominio.com/' WHERE name = 'PS_SHOP_DOMAIN';
UPDATE ps_configuration SET value = 'https://tudominio.com/' WHERE name = 'PS_SHOP_DOMAIN_SSL';
[WARNING] Si usas un dominio temporal (como una IP o un subdominio de DirectAdmin), cambia la URL temporalmente. Luego, cuando el dominio apunte, vuelve a actualizarla.
Configurar el almacenamiento en caché y las URLs amigables
- Desde el back office de PrestaShop (accede a
/admin), ve a Configuración de la tienda > Rendimiento. - Activa la caché si estaba activada antes (recomendado: Caché de archivos).
- Ve a Tráfico y SEO > SEO & URLs y verifica que las URLs amigables estén activas. Si no, actívalas y guarda.
Verificar los módulos y temas
Algunos módulos pueden tener rutas absolutas o configuraciones específicas. Revisa que todos los módulos estén activos y funcionando. Si ves errores, puede ser necesario reinstalar algún módulo o ajustar sus configuraciones.
Paso 7: Probar la tienda a fondo
Una vez que todo está configurado, es hora de hacer pruebas exhaustivas. No des por hecho que todo funciona solo porque la página carga.
Lista de verificación
- Página de inicio: ¿Carga correctamente? ¿Sin errores?
- Categorías y productos: ¿Se muestran bien? ¿Las imágenes se ven?
- Carrito de compra: Añade un producto y ve al carrito. ¿Funciona?
- Proceso de pago: Simula un pedido (sin pagar realmente) para ver si llega al final.
- Panel de administración: Accede al back office. ¿Todo en orden?
- Envío de correos: Prueba el formulario de contacto o la recuperación de contraseña.
- Módulos de pago: Si usas PayPal, tarjeta, etc., verifica que las credenciales sigan siendo válidas.
[TIP] Si encuentras errores de imágenes, puede ser que las rutas estén mal. Ve a Configuración de la tienda > Imágenes y regenera las miniaturas si es necesario.
Paso 8: Actualizar los DNS y finalizar la migración
Cuando estés seguro de que todo funciona en el nuevo servidor, es momento de hacer el cambio definitivo.
Cambiar los registros DNS
- Accede al panel de control de tu dominio (donde lo compraste o gestionas).
- Cambia los registros A y CNAME para que apunten a la IP del nuevo servidor.
- Si usas un CDN o servicios externos (Cloudflare, por ejemplo), actualiza también allí.
Esperar la propagación
La propagación DNS puede tardar desde minutos hasta 48 horas. Durante ese tiempo, algunos usuarios verán la tienda antigua y otros la nueva. Para evitar problemas, puedes:
- Poner la tienda en modo mantenimiento en el servidor antiguo.
- Redirigir el tráfico temporalmente usando un archivo
.htaccessen el servidor antiguo.
Desactivar el servidor antiguo
Una vez que el dominio apunte al nuevo servidor y todo funcione, puedes cancelar el hosting antiguo. Pero antes, asegúrate de tener una copia de seguridad final.
Preguntas frecuentes (FAQ) sobre migrar PrestaShop a DirectAdmin
¿Puedo migrar PrestaShop sin perder los pedidos activos?
Sí, siempre que la migración sea completa y no haya cambios en los datos durante el proceso. Lo ideal es poner la tienda en modo mantenimiento mientras realizas la copia y la restauración.
¿Qué hago si después de la migración veo un error de "base de datos no encontrada"?
Revisa el archivo config/settings.inc.php y asegúrate de que el nombre de la base de datos, usuario y contraseña sean correctos. También verifica que la base de datos exista en DirectAdmin.
¿Cómo puedo acelerar la migración si mi tienda es muy grande?
Usa SSH para comprimir y transferir los archivos. Para la base de datos, puedes usar mysqldump y luego importar por línea de comandos. También puedes contratar un servicio de migración profesional si no te sientes seguro.
¿Necesito cambiar algo en el archivo .htaccess?
Depende. Si tu tienda usa URLs amigables, el .htaccess se genera automáticamente. Al migrar, es posible que tengas que regenerarlo desde el back office (en SEO & URLs). Si ves errores 404, prueba a regenerarlo.
¿Qué hago si uso un CDN como Cloudflare?
Si usas Cloudflare, asegúrate de que los DNS apunten a la IP del nuevo servidor. Además, puede ser necesario purgar la caché de Cloudflare después de la migración para que los cambios se vean.
¿Puedo migrar desde cPanel a DirectAdmin?
Sí, el proceso es similar. La principal diferencia es la estructura de carpetas y la forma de gestionar las bases de datos. En DirectAdmin, las cuentas suelen tener una carpeta domains/tudominio.com/public_html/.
Conclusión
Migrar PrestaShop DirectAdmin no es un proceso trivial, pero siguiendo estos pasos con cuidado, puedes hacerlo sin perder datos ni afectar la experiencia de tus clientes. La clave está en la preparación: copias de seguridad, verificación de requisitos y pruebas exhaustivas.
Recuerda que si en algún momento te sientes abrumado, siempre puedes buscar ayuda profesional. Pero con esta guía, tienes una hoja de ruta clara para realizar una transferencia PrestaShop exitosa.
[INFO] Si tu nuevo servidor usa Syspanel (antes conocido como HestiaCP), el acceso se realiza por el puerto 2106. El proceso de migración es similar, pero la estructura de carpetas puede variar.
¡Buena suerte con tu migración y que tu tienda siga creciendo en su nuevo hogar!
