Migrar una web de PrestaShop a un nuevo servidor
Mover tu tienda PrestaShop a un servidor nuevo puede parecer una tarea complicada, pero con la guía adecuada es un proceso que puedes realizar sin ser un experto. En este artículo te explicaremos paso a paso cómo migrar PrestaShop de forma segura, evitando errores comunes y manteniendo tus datos intactos. Hablaremos de backups, transferencia de archivos, exportación de bases de datos y configuración final. ¡Vamos allá!
¿Por qué hacer un cambio de hosting PrestaShop?
Antes de empezar, es bueno entender por qué necesitas migrar. Las razones más comunes son:
- Rendimiento: Tu servidor actual es lento y afecta la velocidad de carga.
- Seguridad: El hosting no ofrece certificados SSL o actualizaciones.
- Soporte técnico: Necesitas un plan con mejor atención.
- Escalabilidad: Tu tienda crece y necesitas más recursos.
Cualquiera que sea tu motivo, el proceso es similar y muy manejable si sigues estos pasos.
Requisitos previos para transferir PrestaShop
Antes de mover nada, asegúrate de tener:
- Acceso al panel de control del servidor antiguo (cPanel, Plesk, Syspanel, etc.).
- Acceso al panel de control del nuevo servidor.
- Un cliente FTP (como FileZilla) o acceso a un administrador de archivos.
- Una herramienta para gestionar bases de datos (phpMyAdmin, Adminer, etc.).
- Tiempo suficiente para completar el proceso sin prisas.
[INFO] Si tu nuevo hosting usa Syspanel (antes conocido como HestiaCP), recuerda que el acceso al panel se realiza por el puerto 2106. Por ejemplo:
https://tudominio.com:2106.
Paso 1: Hacer una copia de seguridad completa (PrestaShop backup)
El primer paso y el más importante es realizar un backup de tu tienda. Esto incluye archivos y base de datos.
1.1. Backup de archivos (vía FTP o panel de control)
Conéctate al servidor antiguo mediante FTP o el administrador de archivos del panel.
- Localiza la carpeta raíz de tu PrestaShop (normalmente
public_htmlowww). - Descarga toda la carpeta a tu ordenador. Esto puede llevar tiempo si la tienda es grande.
- Asegúrate de que la descarga sea completa. Una buena práctica es comprimir la carpeta en un ZIP desde el panel (si el hosting lo permite) y descargar el ZIP.
1.2. Backup de la base de datos (vía phpMyAdmin)
- Entra a phpMyAdmin desde el panel de control de tu hosting antiguo.
- Selecciona la base de datos de tu PrestaShop (normalmente tiene un nombre como
prestashop_db). - Haz clic en la pestaña Exportar.
- Elige el método Rápido y formato SQL.
- Haz clic en Continuar y descarga el archivo
.sql.
[WARNING] No uses la opción "Exportar con CREATE DATABASE" a menos que sepas cómo importarlo. Usa la exportación simple.
1.3. Guarda todo en un lugar seguro
Guarda tanto la carpeta comprimida como el archivo SQL en tu ordenador o en la nube. Este es tu salvavidas si algo sale mal.
Paso 2: Preparar el nuevo servidor
Antes de subir los archivos, debes tener el nuevo hosting listo.
2.1. Crear la base de datos en el nuevo servidor
- En el panel de control del nuevo hosting (por ejemplo, en Syspanel), busca la sección de Bases de datos o MySQL.
- Crea una nueva base de datos con un nombre que recuerdes (ej:
miprestashop_nueva). - Crea un usuario para esa base de datos y asigna una contraseña segura.
- Otorga todos los privilegios a ese usuario sobre la base de datos.
2.2. Configurar el dominio (si aplica)
Si estás migrando a un dominio nuevo o subdominio, asegúrate de que esté apuntando al nuevo servidor (modificando los DNS). Esto puede tardar hasta 48 horas, así que planifícalo con antelación.
2.3. Instalar PrestaShop desde cero (opcional)
Algunos prefieren instalar una versión limpia de PrestaShop y luego sobrescribir archivos. Esto es útil si quieres cambiar de versión. Si no, puedes saltarte este paso y subir directamente tus archivos.
Paso 3: Subir los archivos al nuevo servidor
Ahora toca mover los archivos de tu tienda.
3.1. Subir la carpeta de PrestaShop
- Conéctate al nuevo servidor vía FTP o administrador de archivos.
- Sube toda la carpeta de tu PrestaShop (la que descargaste en el paso 1) a la raíz del nuevo hosting (normalmente
public_htmlowww). - Si el hosting tiene una instalación previa, sobrescribe los archivos.
[TIP] Si tu conexión es lenta, comprime la carpeta en un ZIP, súbela y luego descomprímela desde el panel de control del hosting. Esto es más rápido.
3.2. Verificar permisos de archivos
PrestaShop necesita ciertos permisos para funcionar. Asegúrate de que las carpetas cache, config, img, log, mails, modules, themes, translations, upload y download tengan permisos 755 (o 777 en algunos casos). Los archivos deben tener 644.
Si usas Syspanel, puedes cambiar permisos desde el administrador de archivos o mediante comandos SSH.
Paso 4: Importar la base de datos
Con los archivos en su lugar, importamos la base de datos.
4.1. Importar el archivo SQL
- Entra a phpMyAdmin en el nuevo servidor.
- Selecciona la base de datos que creaste en el paso 2.
- Haz clic en Importar.
- Selecciona el archivo
.sqlque descargaste. - Haz clic en Continuar y espera a que termine. Si el archivo es grande, puede tardar.
[WARNING] Si tu archivo SQL es muy grande (más de 50 MB), puede que phpMyAdmin no pueda subirlo. En ese caso, usa herramientas como BigDump o importa vía SSH con el comando
mysql -u usuario -p base_datos < archivo.sql.
4.2. Actualizar la configuración de la base de datos
Ahora debes decirle a PrestaShop que use la nueva base de datos.
- Busca el archivo
app/config/parameters.phpen la raíz de tu PrestaShop. - Edítalo con un editor de texto (como Notepad++ o el editor del panel).
- Busca las líneas que empiezan por
'database_host','database_name','database_user'y'database_password'. - Cambia los valores por los de tu nueva base de datos. Normalmente
'database_host'es'localhost'a menos que tu hosting use un servidor de bases de datos remoto.
Guarda el archivo.
[INFO] En versiones antiguas de PrestaShop (1.6 o anteriores), el archivo es
config/settings.inc.php. Ahí encontrarás las constantes_DB_SERVER_,_DB_NAME_,_DB_USER_y_DB_PASSWD_.
Paso 5: Ajustar la URL de la tienda
Si cambiaste de dominio o subdominio, debes actualizar la URL en la base de datos.
5.1. Cambiar la URL en la base de datos
- En phpMyAdmin del nuevo servidor, selecciona tu base de datos.
- Busca la tabla
ps_configuration(oprestashop_configurationsegún el prefijo). - Ejecuta una consulta SQL para cambiar la URL. Por ejemplo:
UPDATE ps_configuration SET value = 'https://tunuevodominio.com' WHERE name IN ('PS_SHOP_DOMAIN', 'PS_SHOP_DOMAIN_SSL');
- También actualiza la tabla
ps_shop_url:
UPDATE ps_shop_url SET domain = 'tunuevodominio.com', domain_ssl = 'tunuevodominio.com' WHERE id_shop_url = 1;
[TIP] Si tu tienda tiene multitienda, repite la operación para cada tienda.
Paso 6: Probar la tienda y solucionar errores comunes
Una vez subido todo, visita tu tienda en el nuevo servidor. Si ves la página de inicio, ¡enhorabuena! Pero a veces aparecen errores. Aquí los más comunes:
6.1. Página en blanco o error 500
- Activa el modo debug de PrestaShop editando
config/defines.inc.phpy cambiando_PS_MODE_DEV_atrue. Así verás el error exacto. - Suele ser por permisos de archivos o problemas con la base de datos.
6.2. Imágenes rotas
- Ve a Parámetros de la tienda > Parámetros avanzados > Rendimiento y regenera las miniaturas.
- También puedes vaciar la carpeta
img/tmpmanualmente.
6.3. Módulos que no funcionan
- Algunos módulos tienen rutas absolutas. Puedes desinstalarlos y volver a instalarlos desde el back office.
- Si el módulo es de pago, contacta al soporte.
6.4. Redirecciones o enlaces antiguos
- Si cambiaste de dominio, configura redirecciones 301 desde el antiguo al nuevo en el archivo
.htaccess. Ejemplo:
Redirect 301 /antigua-pagina https://tunuevodominio.com/nueva-pagina
Paso 7: Configurar tareas programadas (cron jobs)
PrestaShop usa cron para procesos como envío de correos, actualizaciones de stock, etc.
- En el panel de control del nuevo hosting, busca Cron Jobs o Tareas programadas.
- Añade una tarea que ejecute el script de PrestaShop. Normalmente:
php /ruta/completa/a/tu/tienda/cronjobs/cron.php
- La frecuencia recomendada es cada 5 o 10 minutos.
[INFO] En Syspanel, los cron jobs se configuran en la sección Cron del panel, accesible por el puerto 2106.
Paso 8: Migrar SSL y certificados
Si tu nuevo hosting incluye SSL gratuito (Let’s Encrypt), actívalo desde el panel. En Syspanel, ve a SSL y selecciona tu dominio para instalar el certificado.
- Si tenías un certificado de pago, deberás instalarlo manualmente o pedir al soporte que lo haga.
- Asegúrate de que todas las páginas carguen con HTTPS.
Preguntas frecuentes (FAQ)
¿Puedo migrar PrestaShop sin perder datos de clientes?
Sí, si haces un backup completo y lo restauras correctamente, todos los datos (pedidos, clientes, productos) se mantienen.
¿El cambio de hosting PrestaShop afecta al SEO?
Puede afectar temporalmente si no configuras redirecciones. Usa 301 para las URLs antiguas y mantén la misma estructura de enlaces.
¿Cuánto tiempo tarda transferir PrestaShop?
Depende del tamaño de la tienda y la velocidad de tu conexión. Entre 1 y 4 horas para una tienda mediana.
¿Necesito ser programador para hacerlo?
No, siguiendo esta guía paso a paso cualquier persona con conocimientos básicos de hosting puede hacerlo.
¿Qué hago si algo sale mal?
Siempre tienes tu backup. Simplemente restaura los archivos y la base de datos en el servidor antiguo y vuelve a la normalidad.
Conclusión
Migrar PrestaShop a un nuevo servidor es un proceso metódico que, con paciencia y siguiendo estos pasos, puedes realizar sin problemas. Recuerda siempre hacer un PrestaShop backup completo antes de empezar. Si tu nuevo hosting usa Syspanel, no olvides que el acceso es por el puerto 2106. Con esta guía PrestaShop tendrás tu tienda funcionando en su nuevo hogar en poco tiempo. ¡Buena suerte!
