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

Cómo migrar un sitio de PrestaShop de cPanel a DirectAdmin

Actualizado el 24 de enero de 2026

Preparativos antes de la migración

Migrar una tienda online puede sonar aterrador, pero con la guía adecuada es como mudarse de casa: solo necesitas una buena caja de herramientas, un plan claro y saber qué llevar primero. En este artículo te explico paso a paso cómo hacer una migración PrestaShop desde un servidor con cPanel a uno con DirectAdmin, sin perder datos, sin romper la tienda y sin necesidad de ser un gurú de la terminal.

Antes de tocar nada, vamos a entender qué estamos moviendo. Un sitio de PrestaShop tiene tres partes principales: los archivos (el código de la tienda), la base de datos (MySQL) y la configuración del servidor (versión de PHP, permisos, etc.). Si movemos las tres correctamente, la tienda funcionará igual que antes, pero en su nueva casa.

Requisitos previos

Para que todo vaya sobre ruedas, necesitas tener a mano lo siguiente:

  • Acceso al panel de control cPanel del servidor antiguo (usuario y contraseña).
  • Acceso al panel de control DirectAdmin del servidor nuevo (usuario y contraseña).
  • Un cliente FTP como FileZilla (gratuito) o acceso al administrador de archivos de ambos paneles.
  • Acceso a phpMyAdmin en ambos servidores.
  • Una copia de seguridad reciente de tu tienda (por si acaso, nunca está de más).
  • Unas 2 o 3 horas de tiempo tranquilo, sin prisas.

[INFO] Si tu nuevo servidor usa Syspanel (antes conocido como HestiaCP), no te preocupes, el proceso es casi idéntico a DirectAdmin. Solo recuerda que el acceso a Syspanel se hace por el puerto 2106 (por ejemplo: https://tu-servidor.com:2106).

Paso 1: Hacer una copia de seguridad completa en cPanel

Lo primero es lo primero: asegurar los datos de origen. En cPanel, la herramienta ideal es el Asistente de Copias de Seguridad o Backup.

1.1 Copia de seguridad de los archivos del sitio

  1. Entra a tu cPanel.
  2. Busca la sección Archivos y haz clic en Backup o Asistente de Copias de Seguridad.
  3. Dentro, elige la opción Backup completo de la cuenta o Descargar un backup de la cuenta completa. Esto genera un archivo .tar.gz con todo: archivos, bases de datos, correos, etc.
  4. Descarga ese archivo a tu ordenador. Si tu tienda es muy grande (más de 2 GB), puede que el backup falle o tarde mucho. En ese caso, usa FTP para descargar directamente la carpeta public_html.

[TIP] Si tu hosting en cPanel no te permite hacer un backup completo, usa FileZilla para descargar la carpeta public_html completa. Asegúrate de activar la visualización de archivos ocultos (.htaccess es clave).

1.2 Exportar la base de datos desde phpMyAdmin

La base de datos es el cerebro de tu tienda: productos, clientes, pedidos, configuraciones. Hay que exportarla con cuidado.

  1. En cPanel, busca la sección Bases de Datos y haz clic en phpMyAdmin.
  2. A la izquierda, selecciona la base de datos de tu PrestaShop (normalmente suele tener un prefijo como tienda_).
  3. Arriba, haz clic en la pestaña Exportar.
  4. Elige el método Rápido y formato SQL. Si tu base es muy grande, elige Personalizado y marca la opción Comprimir con gzip para que pese menos.
  5. Descarga el archivo .sql o .sql.gz y guárdalo junto al backup de archivos.

[WARNING] No exportes solo algunas tablas. Necesitas la base de datos completa para que las relaciones entre tablas (productos, pedidos, etc.) no se rompan.

Paso 2: Preparar el servidor destino en DirectAdmin

Ahora vamos a la nueva casa. DirectAdmin es muy intuitivo, pero hay que preparar el terreno antes de meter los muebles.

2.1 Crear la base de datos y el usuario

  1. Entra a tu DirectAdmin.
  2. Busca la sección MySQL Management o Bases de Datos MySQL.
  3. Crea una nueva base de datos (por ejemplo, nueva_tienda).
  4. Crea un usuario para esa base de datos (por ejemplo, usuario_tienda) y asígnale una contraseña segura.
  5. Añade ese usuario a la base de datos con todos los privilegios (SELECT, INSERT, UPDATE, DELETE, CREATE, etc.).

[INFO] Anota el nombre de la base de datos, el usuario y la contraseña en un bloc de notas. Los necesitarás para configurar PrestaShop más adelante.

2.2 Subir los archivos del sitio

Tienes dos opciones: usar el Administrador de Archivos de DirectAdmin (si el backup no es muy grande) o usar FTP.

  1. En DirectAdmin, ve a File Manager o Administrador de Archivos.
  2. Navega hasta la carpeta domains y luego a tu dominio (por ejemplo, midominio.com).
  3. Dentro, busca la carpeta public_html. Si no existe, créala.
  4. Sube el archivo .tar.gz que descargaste de cPanel dentro de public_html.
  5. Una vez subido, haz clic derecho sobre el archivo y selecciona Extraer.
  6. Si usaste FTP, simplemente arrastra y suelta todos los archivos de tu carpeta public_html local a la carpeta public_html del servidor.

[WARNING] Asegúrate de que los archivos ocultos como .htaccess se hayan subido correctamente. En FileZilla, activa Servidor > Forzar mostrar archivos ocultos.

Paso 3: Importar la base de datos en DirectAdmin

Ahora toca meter el cerebro en la nueva casa.

  1. En DirectAdmin, ve a phpMyAdmin (suele estar dentro de la sección MySQL Management).
  2. Selecciona la base de datos que creaste en el paso 2.1.
  3. Haz clic en la pestaña Importar.
  4. Sube el archivo .sql o .sql.gz que exportaste desde cPanel.
  5. Haz clic en Continuar y espera a que termine. Si la base es grande, ten paciencia.

[TIP] Si el archivo es demasiado grande para phpMyAdmin (más de 50 MB), puedes importarlo por SSH con el comando mysql -u usuario -p nueva_tienda < backup.sql. Pide a tu proveedor de hosting que te lo ejecute si no sabes usar SSH.

Paso 4: Configurar PrestaShop para el nuevo servidor

PrestaShop guarda la configuración de la base de datos en el archivo app/config/parameters.php. Hay que actualizarlo con los datos del nuevo servidor.

4.1 Editar el archivo parameters.php

  1. Ve a la carpeta public_html de tu tienda en el servidor.
  2. Busca la ruta app/config/parameters.php.
  3. Ábrelo con un editor de texto (puedes usar el Editor del Administrador de Archivos de DirectAdmin).
  4. Modifica los siguientes valores:
  • database_host: normalmente localhost o 127.0.0.1.
  • database_name: el nombre de tu nueva base de datos (ej. nueva_tienda).
  • database_user: el usuario que creaste (ej. usuario_tienda).
  • database_password: la contraseña que asignaste.
  1. Guarda el archivo.

[WARNING] No toques ningún otro valor del archivo. Si la URL de la tienda cambia (por ejemplo, de www.antiguo.com a www.nuevo.com), también deberás actualizar PS_SHOP_DOMAIN y PS_SHOP_DOMAIN_SSL en la base de datos (tabla ps_configuration), pero eso lo veremos más adelante.

4.2 Configurar los permisos de archivos y carpetas

PrestaShop necesita permisos de escritura en ciertas carpetas para funcionar correctamente (caché, logs, archivos subidos).

  1. En DirectAdmin, ve al Administrador de Archivos.
  2. Selecciona toda la carpeta public_html.
  3. Haz clic en Cambiar permisos.
  4. Establece 755 para los directorios y 644 para los archivos.
  5. Específicamente, las carpetas var/cache, var/logs, img, upload y download necesitan permisos 775 o incluso 777 en algunos servidores.

[TIP] Si no sabes qué permisos poner, prueba con 755/644 primero. Si la tienda da errores de escritura, sube a 775. Nunca dejes 777 en producción si puedes evitarlo.

Paso 5: Ajustar la configuración del servidor (PHP y módulos)

PrestaShop es exigente con la versión de PHP y las extensiones. DirectAdmin te permite configurar esto fácilmente.

5.1 Seleccionar la versión de PHP

  1. En DirectAdmin, busca la sección PHP Settings o PHP Version.
  2. Selecciona una versión compatible con tu PrestaShop. Para PrestaShop 1.7 o 8, PHP 7.4 o 8.0 es lo recomendado.
  3. Asegúrate de que las extensiones mysqli, curl, gd, mbstring, zip y openssl estén activadas.

[INFO] Si tu PrestaShop es muy antiguo (versión 1.6), necesitarás PHP 5.6 o 7.0. Usar una versión más nueva dará errores de compatibilidad.

5.2 Configurar el archivo .htaccess

El archivo .htaccess de PrestaShop contiene reglas de reescritura de URL y optimización. Si no se migró correctamente, la tienda dará errores 404.

  1. Ve a public_html y busca el archivo .htaccess.
  2. Si no existe, puedes generarlo desde el Back Office de PrestaShop: ve a Parámetros Avanzados > Rendimiento y haz clic en Guardar para regenerar el archivo.

[WARNING] Si tu tienda usa URLs amigables, asegúrate de que el módulo mod_rewrite de Apache esté activado en DirectAdmin. Si usas Nginx, necesitarás configurar las reglas de reescritura de forma diferente. Consulta a tu proveedor si no estás seguro.

Paso 6: Actualizar la URL de la tienda en la base de datos

Este paso es crucial si cambias el dominio o el subdominio. Si el dominio es el mismo, puedes saltarlo, pero es recomendable verificar.

6.1 Cambiar las URL en la base de datos

  1. Entra a phpMyAdmin en DirectAdmin.
  2. Selecciona tu base de datos.
  3. Haz clic en la pestaña SQL.
  4. Ejecuta esta consulta (reemplaza www.antiguo.com por tu dominio antiguo y www.nuevo.com por el nuevo):
UPDATE ps_configuration SET value = 'www.nuevo.com' WHERE name = 'PS_SHOP_DOMAIN';
UPDATE ps_configuration SET value = 'www.nuevo.com' WHERE name = 'PS_SHOP_DOMAIN_SSL';
UPDATE ps_shop_url SET domain = 'www.nuevo.com', domain_ssl = 'www.nuevo.com' WHERE id_shop = 1;

[TIP] Si no usas www, quítalo de las URLs. La tienda debe tener una única URL canónica para evitar problemas de SEO.

Paso 7: Probar la tienda y solucionar errores comunes

Ya está todo en su sitio. Ahora toca la prueba de fuego: abrir la tienda en el navegador.

7.1 Verificación inicial

  1. Abre tu dominio en el navegador (por ejemplo, https://www.nuevo.com).
  2. Si ves la tienda, ¡enhorabuena! Si no, no te preocupes, aquí van los errores más comunes y sus soluciones:

7.2 Errores comunes y cómo solucionarlos

Error de conexión a la base de datos: Revisa el archivo parameters.php. Asegúrate de que el host, usuario y contraseña son correctos.

Página en blanco: Activa el modo de depuración en PrestaShop. Edita config/defines.inc.php y cambia _PS_MODE_DEV_ de false a true. Así verás el error exacto.

Error 500: Suele ser un problema de permisos o de .htaccess. Revisa los permisos de var/cache y var/logs (prueba con 775) y regenera el .htaccess.

Imágenes rotas: Ve a Parámetros Avanzados > Rendimiento en el Back Office y haz clic en Regenerar miniaturas.

El Back Office no carga: Borra el contenido de la carpeta var/cache (tanto dev como prod).

[INFO] Si cambiaste de dominio, recuerda redirigir el antiguo al nuevo mediante una redirección 301 en el .htaccess para no perder posicionamiento SEO.

Paso 8: Optimización post-migración

Ya tienes la tienda funcionando, pero una migración PrestaShop no termina hasta que todo está optimizado para el nuevo servidor.

8.1 Activar la caché de PrestaShop

  1. Entra al Back Office.
  2. Ve a Parámetros Avanzados > Rendimiento.
  3. Activa la Caché y selecciona el sistema de caché recomendado (por ejemplo, Memcached o APCu si están disponibles, o File System como opción básica).

8.2 Configurar SSL y redirigir a HTTPS

  1. En DirectAdmin, instala un certificado SSL gratuito (Let's Encrypt) para tu dominio.
  2. En PrestaShop, ve a Parámetros Avanzados > Rendimiento y activa la opción Redirigir a HTTPS.
  3. Asegúrate de que PS_SHOP_DOMAIN_SSL esté actualizado en la base de datos.

8.3 Limpiar archivos temporales

  1. Borra el contenido de var/cache (sí, otra vez).
  2. Borra la carpeta var/logs si contiene archivos antiguos de logs.

Preguntas frecuentes (FAQ)

¿Puedo migrar sin perder el posicionamiento SEO?
Sí, siempre que mantengas la misma estructura de URLs y configures redirecciones 301 si cambias el dominio. También es importante actualizar Google Search Console con el nuevo dominio.

¿Qué hago si mi PrestaShop es muy antiguo?
Si usas PrestaShop 1.6 o anterior, te recomiendo actualizar la tienda antes de migrar. Las versiones antiguas tienen problemas de seguridad y compatibilidad con PHP moderno.

¿Cuánto tarda la migración?
Depende del tamaño de la tienda. Una tienda pequeña (menos de 1 GB) puede estar lista en 1-2 horas. Una tienda grande (más de 5 GB) puede llevar medio día.

¿Necesito conocimientos avanzados?
No, esta guía está pensada para que cualquier persona pueda seguirla. Solo necesitas paciencia y seguir los pasos en orden.

¿Qué pasa si me equivoco en algo?
Siempre puedes volver a empezar. Por eso es importante tener la copia de seguridad de cPanel. Si algo falla, restaura el backup y revisa el paso donde te equivocaste.

[WARNING] Nunca hagas la migración en horas punta de tu tienda. Elige un momento de bajo tráfico (madrugada o fin de semana) para minimizar el impacto en tus clientes.

Conclusión

Migrar un sitio de PrestaShop de cPanel a DirectAdmin es un proceso mecánico que, siguiendo estos pasos, no debería darte demasiados quebraderos de cabeza. La clave está en la preparación: una buena copia de seguridad, paciencia y verificar cada paso antes de pasar al siguiente.

Recuerda que la migración PrestaShop no es solo mover archivos, sino también ajustar la configuración del servidor, los permisos y las URLs. Con esta guía, tu tienda estará funcionando en su nuevo

¿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