Migrar PrestaShop de un servidor a otro usando Syspanel
Migrar una tienda PrestaShop de un servidor a otro puede parecer una tarea compleja, pero con las herramientas adecuadas y una guía paso a paso, es un proceso que cualquier administrador puede realizar con éxito. En este artículo, te explicaremos de forma detallada cómo migrar PrestaShop usando Syspanel, el panel de control que ahora incluye HestiaCP adaptado para nuestros servicios. Syspanel te permite gestionar archivos, bases de datos y dominios de manera sencilla, todo accesible a través del puerto 2106 (por ejemplo, https://tudominio.com:2106). El objetivo es que tu tienda funcione sin interrupciones en el nuevo servidor, manteniendo todos los productos, clientes, pedidos y configuraciones. A lo largo de esta guía, cubriremos desde la preparación inicial hasta la verificación final, incluyendo consejos para evitar errores comunes. Recuerda que, aunque el proceso es mecánico, cada tienda tiene sus particularidades, así que tómate tu tiempo y sigue cada paso con atención.
Preparación antes de la migración
Antes de iniciar la migración de PrestaShop, es fundamental realizar una copia de seguridad completa de tu tienda actual. Esto incluye tanto los archivos del sistema como la base de datos. En esta fase, también debes asegurarte de que el nuevo servidor cumple con los requisitos técnicos de PrestaShop, como la versión de PHP, el motor de base de datos MySQL o MariaDB, y las extensiones necesarias (por ejemplo, mysqli, gd, curl). Si tu tienda usa módulos o temas personalizados, verifica que sean compatibles con la versión de PrestaShop que tienes instalada. Además, es recomendable anotar la configuración de tu servidor actual, como la ruta de los archivos, los permisos de carpetas y los valores de php.ini. Con Syspanel, puedes revisar estos ajustes fácilmente desde el apartado de “Configuración del servidor”. No olvides también desactivar temporalmente la tienda para evitar que los clientes realicen compras durante el proceso, aunque puedes hacerlo después de la copia de seguridad para minimizar el impacto.
Requisitos del nuevo servidor
Para que tu PrestaShop funcione correctamente en el nuevo entorno, el servidor debe tener instalados los siguientes componentes:
- PHP 7.4 o superior (recomendado PHP 8.0 o 8.1 para mejor rendimiento).
- MySQL 5.7+ o MariaDB 10.3+.
- Apache o Nginx con soporte para mod_rewrite.
- Extensiones PHP:
mysqli,gd,curl,json,mbstring,openssl,pdo_mysql,simplexml,zip. - Memoria de PHP de al menos 256 MB (puedes ajustarlo en Syspanel desde “PHP Settings”).
Si tu nuevo servidor no cumple con estos requisitos, PrestaShop podría mostrar errores o funcionar lentamente. En Syspanel, puedes instalar o actualizar PHP fácilmente desde el apartado de “Software” o “PHP Versions”.
Paso 1: Realizar una copia de seguridad completa
El primer paso para migrar PrestaShop es crear una copia de seguridad de los archivos y la base de datos de tu tienda actual. No te saltes este paso, ya que es tu red de seguridad en caso de que algo salga mal durante la migración. Para hacerlo, puedes usar la herramienta de backup de Syspanel o hacerlo manualmente a través de FTP y phpMyAdmin. Te explicamos ambas opciones.
Copia de seguridad de archivos
Accede a tu servidor actual mediante FTP o el administrador de archivos de Syspanel. Localiza la carpeta raíz de PrestaShop (normalmente public_html o www). Comprime toda la carpeta en un archivo ZIP o TAR.GZ. Si usas Syspanel, ve a “Archivos” > “Administrador de archivos”, selecciona la carpeta y haz clic en “Comprimir”. Descarga el archivo comprimido a tu computadora. Asegúrate de que no haya archivos corruptos y que el tamaño sea coherente con tu tienda.
Copia de seguridad de la base de datos
La base de datos contiene toda la información de tu tienda: productos, clientes, pedidos, etc. Para exportarla, accede a phpMyAdmin desde Syspanel (normalmente en “Bases de datos” > “phpMyAdmin”). Selecciona la base de datos de PrestaShop, haz clic en “Exportar” y elige el método “Rápido” con formato SQL. Guarda el archivo .sql resultante. Si tu base de datos es muy grande, puedes usar la opción “Personalizado” y seleccionar solo las tablas necesarias, pero para una migración completa, lo mejor es exportar todo.
[TIP] Si tu tienda tiene muchos datos, puedes usar la herramienta de backup integrada de PrestaShop: ve a “Parámetros avanzados” > “Mantenimiento” > “Exportar” y descarga el archivo. Sin embargo, el método manual suele ser más fiable.
Paso 2: Configurar el nuevo servidor en Syspanel
Una vez que tienes la copia de seguridad, es hora de preparar el nuevo servidor. Syspanel facilita la creación del entorno necesario para tu tienda. Sigue estos pasos:
Crear un nuevo dominio o subdominio
En Syspanel, ve a “Web” > “Añadir dominio”. Ingresa el nombre de tu dominio (por ejemplo, tutienda.com) o un subdominio temporal para pruebas (como migracion.tutienda.com). Asegúrate de que el DNS del dominio apunte al nuevo servidor (puedes hacerlo después de la migración para evitar el tiempo de inactividad). Syspanel creará automáticamente la carpeta raíz y la configuración básica del sitio.
Crear la base de datos
En “Bases de datos” > “Añadir base de datos”, asigna un nombre, usuario y contraseña. Anota estos datos, los necesitarás más adelante. Syspanel te mostrará el nombre del servidor de base de datos (normalmente localhost). También puedes crear un usuario adicional si es necesario, pero con uno es suficiente.
Ajustar la configuración de PHP
Para que PrestaShop funcione sin problemas, debes asegurarte de que la configuración de PHP sea la adecuada. En Syspanel, ve a “PHP Settings” para el dominio que creaste. Aumenta el límite de memoria (memory_limit) a 256M o más, y ajusta max_execution_time a 300 segundos. También verifica que las extensiones necesarias estén habilitadas (puedes verlas en la lista de módulos PHP).
[WARNING] No olvides que el puerto de acceso a Syspanel es el 2106. Si tienes problemas de conexión, verifica que el firewall de tu servidor permita el tráfico en ese puerto. Por ejemplo, para acceder a Syspanel, escribe
https://tudominio.com:2106en tu navegador.
Paso 3: Subir los archivos de PrestaShop al nuevo servidor
Ahora que el nuevo servidor está listo, sube los archivos de tu tienda. Puedes hacerlo mediante FTP, pero la forma más rápida es usar el administrador de archivos de Syspanel.
Subir y descomprimir archivos
Accede a Syspanel, ve a “Archivos” > “Administrador de archivos” y navega hasta la carpeta raíz del dominio (por ejemplo, public_html). Haz clic en “Subir” y selecciona el archivo ZIP o TAR.GZ que descargaste en el paso 1. Una vez subido, selecciona el archivo y haz clic en “Extraer”. Syspanel descomprimirá todo el contenido automáticamente. Si el archivo es muy grande, puede tardar unos minutos. Verifica que todos los archivos y carpetas estén en su lugar, especialmente config/settings.inc.php (en versiones antiguas) o app/config/parameters.php (en versiones modernas).
Establecer permisos correctos
PrestaShop necesita permisos específicos en ciertas carpetas para funcionar correctamente. En Syspanel, puedes cambiar los permisos desde el administrador de archivos. Las carpetas que requieren permisos 755 (lectura, escritura y ejecución para el propietario, y solo lectura y ejecución para otros) son:
/cache/log/img/mails/modules/themes/override/upload/download/translations
Para los archivos, usa permisos 644. Si no estás seguro, Syspanel tiene una opción para “Establecer permisos de PrestaShop” en algunos planes, o puedes hacerlo manualmente.
Paso 4: Importar la base de datos
Con los archivos en su lugar, el siguiente paso es importar la base de datos. Este proceso restaura toda la información de tu tienda.
Importar mediante phpMyAdmin
En Syspanel, ve a “Bases de datos” > “phpMyAdmin” y selecciona la base de datos que creaste en el paso 2. Haz clic en “Importar” y selecciona el archivo .sql que exportaste. Asegúrate de que el tamaño del archivo no exceda el límite de subida (si es muy grande, puedes usar la línea de comandos o herramientas como BigDump). Una vez importado, verifica que las tablas aparezcan en la lista.
Configurar los datos de conexión
PrestaShop necesita saber cómo conectarse a la base de datos. Para ello, edita el archivo app/config/parameters.php (o config/settings.inc.php en versiones antiguas). Busca las líneas que definen database_host, database_name, database_user y database_password. Cámbialas por los datos que anotaste al crear la base de datos en Syspanel. Por ejemplo:
'database_host' => 'localhost''database_name' => 'nombre_de_tu_base''database_user' => 'usuario_de_tu_base''database_password' => 'contraseña_de_tu_base'
Guarda el archivo. Si no puedes editarlo desde el administrador de archivos, usa un editor de texto como Notepad++ o Sublime Text y súbelo de nuevo.
[INFO] Si tu PrestaShop es la versión 1.7 o superior, el archivo de configuración se encuentra en
app/config/parameters.php. Para versiones 1.6, buscaconfig/settings.inc.php. Asegúrate de que el archivo tenga permisos de solo lectura después de editarlo (por ejemplo, 444) para evitar problemas de seguridad.
Paso 5: Ajustar la configuración de la tienda
Después de importar la base de datos y conectar los archivos, tu tienda debería cargar, pero puede que necesites algunos ajustes adicionales para que funcione correctamente en el nuevo servidor.
Cambiar la URL de la tienda
Si cambiaste el dominio o estás usando un subdominio temporal, debes actualizar la URL en la base de datos. Accede a phpMyAdmin, selecciona tu base de datos y ejecuta la siguiente consulta SQL:
UPDATE ps_configuration SET value = 'https://tudominio.com' WHERE name IN ('PS_SHOP_DOMAIN', 'PS_SHOP_DOMAIN_SSL');
Reemplaza tudominio.com con tu nuevo dominio. También actualiza la tabla ps_shop_url:
UPDATE ps_shop_url SET domain = 'tudominio.com', domain_ssl = 'tudominio.com' WHERE id_shop = 1;
Si usas múltiples tiendas, repite para cada id_shop. Esto evita redirecciones incorrectas y errores de carga de recursos.
Limpiar la caché de PrestaShop
La caché de PrestaShop puede contener datos del servidor anterior. Para limpiarla, desde el panel de administración (si puedes acceder), ve a “Parámetros avanzados” > “Rendimiento” y haz clic en “Limpiar caché”. Si no puedes acceder, elimina manualmente los archivos de las carpetas var/cache (en PrestaShop 1.7) o cache (en versiones anteriores). En Syspanel, puedes hacerlo desde el administrador de archivos.
Verificar los enlaces permanentes
Si usas URLs amigables, asegúrate de que el módulo de reescritura de URLs esté activo en Apache o Nginx. En Syspanel, ve a “Web” > “Configuración del servidor” y habilita “mod_rewrite” para Apache. Si usas Nginx, deberás agregar las reglas específicas de PrestaShop en la configuración del sitio (Syspanel suele hacerlo automáticamente al crear el dominio).
Paso 6: Probar la tienda antes de migrar el DNS
Antes de que los clientes accedan a tu tienda, es crucial probarla a fondo. Puedes hacerlo modificando el archivo hosts de tu computadora o usando un subdominio temporal.
Pruebas locales con el archivo hosts
En tu computadora, abre el archivo hosts (en Windows está en C:\Windows\System32\drivers\etc\hosts, en Linux/Mac en /etc/hosts). Añade una línea como:
123.456.789.0 tudominio.com www.tudominio.com
Reemplaza la IP con la de tu nuevo servidor. Luego, accede a https://tudominio.com desde tu navegador. Verifica que:
- La página de inicio cargue correctamente.
- Los productos, categorías y el carrito funcionen.
- Los formularios de registro y contacto envíen datos.
- Los módulos de pago y envío estén activos.
- No haya errores 404 o 500.
Si encuentras errores, revisa los logs del servidor en Syspanel (en “Logs” o “Error Logs”) para identificar el problema.
Pruebas de rendimiento
Además de la funcionalidad, verifica que la tienda cargue rápido. Puedes usar herramientas como GTmetrix o PageSpeed Insights. Si es lenta, ajusta la configuración de PHP (por ejemplo, aumenta memory_limit o habilita la caché de OpCache). Syspanel permite gestionar estas opciones fácilmente.
[TIP] Si usas un subdominio temporal como
migracion.tudominio.com, recuerda que los enlaces internos de PrestaShop pueden seguir apuntando al dominio original. Por eso es importante actualizar la URL en la base de datos como se explicó en el paso 5.
Paso 7: Migrar el DNS y poner la tienda en producción
Una vez que todo funciona correctamente, es hora de cambiar los registros DNS de tu dominio para que apunten al nuevo servidor. Este paso puede tardar entre 24 y 48 horas en propagarse, por lo que es recomendable hacerlo en un momento de bajo tráfico.
Cambiar los registros DNS
Accede al panel de control de tu proveedor de dominio (donde compraste el dominio) y modifica los registros A y CNAME para que apunten a la IP del nuevo servidor. Si usas servicios de CDN o protección, actualiza también esos registros. Durante la propagación, algunos usuarios verán la tienda antigua y otros la nueva, pero no habrá pérdida de datos si ambos servidores están sincronizados.
Desactivar la tienda antigua
Para evitar conflictos, una vez que el DNS se haya propagado, desactiva el sitio en el servidor antiguo. Puedes hacerlo eliminando los archivos o redirigiendo el tráfico al nuevo servidor. En Syspanel, también puedes crear una redirección 301 desde el dominio antiguo al nuevo si cambiaste de dominio.
Verificación final
Después de la propagación, accede a tu tienda desde diferentes dispositivos y redes. Comprueba que todo funcione igual que en las pruebas. También verifica que los correos electrónicos (confirmaciones de pedidos, formularios de contacto) se envíen correctamente. Si usas SSL, asegúrate de que el certificado esté instalado en el nuevo servidor (Syspanel ofrece Let’s Encrypt gratuito en “SSL” > “Añadir SSL”).
Preguntas frecuentes (FAQ)
Aquí respondemos las dudas más comunes sobre la migración de PrestaShop con Syspanel.
¿Cuánto tiempo tarda la migración?
Depende del tamaño de tu tienda y la velocidad de tu conexión. Generalmente, el proceso completo (backup, subida, importación y pruebas) puede tomar entre 1 y 4 horas. La propagación del DNS puede añadir hasta 48 horas, pero tu tienda estará operativa en el nuevo servidor desde el momento en que cambies los registros.
¿Puedo migrar sin perder los pedidos en curso?
Sí, si realizas la copia de seguridad justo antes de la migración y la importas
