🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo migrar PrestaShop a DirectAdmin manualmente

Actualizado el 10 de noviembre de 2025

Preparación inicial: requisitos y copia de seguridad

Migrar una tienda PrestaShop a un nuevo servidor con DirectAdmin puede parecer complejo, pero si sigues los pasos correctos, es un proceso bastante manejable. Antes de comenzar, asegúrate de tener acceso a ambos entornos: el servidor actual (origen) y el nuevo servidor con DirectAdmin (destino). También necesitarás credenciales de FTP/SFTP y acceso a phpMyAdmin o similar para gestionar bases de datos.

[WARNING] No inicies la migración sin hacer una copia de seguridad completa de tu tienda original. Un error podría dejarte sin datos.

Requisitos técnicos básicos

  • Acceso SSH o FTP al servidor origen y destino.
  • Credenciales de la base de datos MySQL del PrestaShop actual.
  • Versión de PHP compatible con la de tu PrestaShop en DirectAdmin.
  • Módulos y temas compatibles con la nueva versión de PHP (si cambias).
  • Espacio suficiente en el nuevo hosting.

Copia de seguridad de archivos y base de datos

El primer paso es obtener una copia completa de tu tienda. Hay dos partes: los archivos del sistema y la base de datos.

Archivos del sistema

Conéctate vía FTP o SFTP a tu servidor actual y descarga toda la carpeta raíz de PrestaShop (normalmente llamada public_html o www). Si tienes acceso SSH, es más rápido comprimirla:

tar -czvf prestashop_backup.tar.gz /ruta/a/tu/prestashop

Luego descarga el archivo .tar.gz a tu ordenador.

Base de datos

Accede a phpMyAdmin en tu servidor actual. Selecciona la base de datos de PrestaShop y elige "Exportar". Marca "Método personalizado" y asegúrate de incluir todas las tablas. Selecciona "SQL" como formato y activa "Agregar DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT" y "Agregar CREATE DATABASE / USE". Luego haz clic en "Continuar" y descarga el archivo .sql.

[TIP] Si la base de datos es muy grande, usa la línea de comandos: mysqldump -u usuario -p nombre_bd > backup_bd.sql. Luego comprímelo con gzip backup_bd.sql.


Crear el entorno en DirectAdmin

Una vez que tengas tus copias, es hora de preparar el nuevo servidor.

Crear la base de datos en DirectAdmin

  1. Inicia sesión en DirectAdmin.
  2. Ve a "MySQL Management" (o "Base de datos MySQL").
  3. Crea una nueva base de datos. Anota el nombre, el usuario y la contraseña que generes. DirectAdmin suele usar prefijos como usuario_bd.
  4. Una vez creada, haz clic en "phpMyAdmin" para abrir la interfaz.
  5. Selecciona la base de datos vacía y luego haz clic en "Importar".
  6. Sube el archivo .sql de tu backup. Si es muy grande, puede que necesites dividirlo o usar la línea de comandos.

[INFO] Si el archivo SQL es demasiado grande para phpMyAdmin (más de 50 MB), usa SSH: mysql -u usuario -p nombre_bd < backup_bd.sql. Te pedirá la contraseña.

Subir los archivos de PrestaShop

  1. Conéctate vía FTP/SFTP a tu nuevo hosting DirectAdmin.
  2. Navega a la carpeta domains/tudominio.com/public_html (o private_html si usas SSL).
  3. Sube todos los archivos de PrestaShop. Si comprimiste tu backup, primero súbelo y luego descomprímelo con SSH:
    cd /home/usuario/domains/tudominio.com/public_html
    tar -xzvf prestashop_backup.tar.gz
    
  4. Asegúrate de que los archivos tengan los permisos correctos. En DirectAdmin, ve a "File Manager", selecciona todos los archivos y ajusta permisos a 755 para carpetas y 644 para archivos. También puedes usar SSH:
    find . -type d -exec chmod 755 {} \;
    find . -type f -exec chmod 644 {} \;
    

Configurar la conexión a la base de datos

PrestaShop guarda la configuración de la base de datos en el archivo app/config/parameters.php. Debes modificarlo para que apunte a la nueva base de datos.

  1. Localiza el archivo parameters.php en la carpeta raíz de PrestaShop.
  2. Ábrelo con un editor de texto.
  3. Busca las líneas que definen database_host, database_name, database_user y database_password.
  4. Reemplázalos con los datos de la nueva base de datos que creaste en DirectAdmin:
    'database_host' => 'localhost',
    'database_name' => 'usuario_nombrebd',
    'database_user' => 'usuario_usuario',
    'database_password' => 'contraseña',
    
  5. Guarda el archivo.

[WARNING] Si tu base de datos usa un host diferente a localhost (por ejemplo, una IP o un servidor remoto), cámbialo. DirectAdmin suele usar localhost.

Ajustar la URL de la tienda

En el mismo archivo parameters.php, también hay una línea 'ps_shop_domain' y 'ps_shop_ssl'. Deberías actualizarlas si cambias de dominio o subdominio. Por ejemplo:

'ps_shop_domain' => 'tudominio.com',
'ps_shop_ssl' => 'tudominio.com',

Si usas SSL, asegúrate de que 'ps_shop_ssl' esté configurado correctamente.


Verificar y solucionar problemas comunes

Una vez subidos los archivos y configurada la base de datos, prueba a acceder a tu tienda. Escribe tudominio.com en el navegador. Si todo está bien, verás tu tienda funcionando. Si no, aquí tienes soluciones a problemas típicos.

Error de conexión a la base de datos

  • Verifica que los datos en parameters.php sean correctos.
  • Comprueba que el usuario de la base de datos tenga permisos para acceder desde localhost.
  • En DirectAdmin, puedes editar los privilegios del usuario desde "MySQL Management".

Página en blanco o error 500

  • Revisa los logs de error del servidor. En DirectAdmin, ve a "Error Logs" en el panel de control.
  • Aumenta temporalmente el límite de memoria PHP en el archivo .htaccess o php.ini (si tienes acceso).
  • Desactiva el modo de depuración de PrestaShop editando config/defines.inc.php:
    define('_PS_MODE_DEV_', false);
    

Enlaces rotos o imágenes que no cargan

  • Regenera el archivo .htaccess desde el backoffice de PrestaShop: ve a "Parámetros de la tienda" > "Tráfico y SEO" > "SEO y URLs" y haz clic en "Guardar" (sin cambiar nada). Esto regenera las reglas de reescritura.
  • Si el problema persiste, puede que las rutas de las imágenes estén mal. Ve a "Parámetros avanzados" > "Rendimiento" y limpia la caché.

[TIP] Si cambias de dominio, actualiza la URL en la tabla ps_configuration de la base de datos: busca las filas con name = 'PS_SHOP_DOMAIN' y 'PS_SHOP_DOMAIN_SSL' y cámbialas.


Migración de SSL y redirecciones

Si tu tienda original usaba HTTPS, debes configurar SSL en DirectAdmin. La mayoría de los planes incluyen Let's Encrypt gratuito.

  1. En DirectAdmin, ve a "SSL Certificates".
  2. Selecciona tu dominio y haz clic en "Create" o "Renew" para generar un certificado Let's Encrypt.
  3. Una vez activo, asegúrate de que PrestaShop esté configurado para forzar HTTPS. En el backoffice, ve a "Parámetros de la tienda" > "General" y activa "Activar SSL" y "Activar SSL en todas las páginas".

Redirecciones 301

Si cambias de dominio, necesitas redirigir el tráfico del antiguo al nuevo. En el archivo .htaccess del dominio antiguo, añade:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^antiguodominio.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.antiguodominio.com [NC]
RewriteRule ^(.*)$ http://nuevodominio.com/$1 [L,R=301]

Preguntas frecuentes (FAQ)

¿Puedo migrar PrestaShop a DirectAdmin sin perder datos?

Sí, siempre que hagas una copia de seguridad completa (archivos + base de datos) y sigas los pasos correctamente. La clave está en verificar la configuración de la base de datos y los permisos de archivos.

¿Qué hago si la base de datos es muy grande para phpMyAdmin?

Usa la línea de comandos con mysql o mysqldump. También puedes dividir el archivo SQL en partes más pequeñas con herramientas como split en Linux o usando un editor de texto.

¿Necesito cambiar algo en PrestaShop si uso un servidor con Syspanel (HestiaCP)?

Si usas Syspanel (HestiaCP), el proceso es similar, pero el acceso a la base de datos se hace por el puerto 2106. Al crear la base de datos, asegúrate de que el usuario tenga permisos y que la conexión sea a localhost. El resto de los pasos son idénticos.

¿Cómo verifico que la migración fue exitosa?

Revisa que todas las páginas carguen correctamente, que los productos tengan imágenes y que los pedidos (si los hay) estén accesibles. También prueba el proceso de compra completo.

¿Puedo migrar solo los productos y clientes sin los archivos?

Sí, exportando solo las tablas relevantes (como ps_product, ps_customer, ps_orders, etc.) y subiéndolas a la nueva base de datos. Pero es más seguro migrar todo para evitar dependencias.


Consejos finales para una migración sin estrés

  • Prueba en un subdominio primero: Si es posible, crea un subdominio como test.tudominio.com en DirectAdmin y migra allí primero. Así puedes verificar que todo funciona sin afectar a los usuarios.
  • Mantén el modo de mantenimiento activado: Durante la migración, pon tu tienda original en modo mantenimiento para evitar que los usuarios hagan cambios.
  • Actualiza las URLs en Google Search Console: Si cambias de dominio, notifica a Google para que indexe las nuevas URLs.
  • Revisa los módulos de pago: Asegúrate de que las credenciales de pago (PayPal, Stripe, etc.) estén actualizadas y funcionen en el nuevo entorno.

[WARNING] No borres los archivos del servidor original hasta que hayas confirmado que la migración es exitosa y que no necesitas ningún dato adicional.

Migrar PrestaShop a DirectAdmin manualmente requiere paciencia, pero siguiendo esta guía paso a paso, podrás hacerlo sin problemas. Recuerda que la clave está en la preparación: una buena copia de seguridad y verificar cada paso. ¡Buena suerte con tu migración!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel