PrestaShop: Cómo migrar tu tienda a un nuevo servidor fácilmente
Migrar tu tienda PrestaShop a un nuevo servidor puede parecer una tarea compleja, pero con la guía adecuada, es un proceso que puedes realizar tú mismo sin necesidad de ser un experto. Como SysAdmin amigable, te explicaré paso a paso cómo hacerlo, desde la preparación hasta la verificación final.
Esta guía está diseñada para que cualquier persona con conocimientos básicos de gestión de servidores pueda mover su tienda online sin perder datos ni tiempo de inactividad. Sigue cada paso con atención y, sobre todo, no te saltes las alertas que te daré.
Antes de empezar: preparación y requisitos
Antes de tocar nada, es fundamental que tengas todo listo. La migración de una tienda online implica mover archivos, bases de datos y configuraciones. Un error aquí puede costarte clientes y ventas.
Requisitos técnicos
Necesitarás acceso a ambos servidores: el antiguo (origen) y el nuevo (destino). Asegúrate de tener:
- Credenciales de FTP o SFTP para subir archivos.
- Acceso a phpMyAdmin o herramienta similar para gestionar bases de datos.
- Datos de conexión SSH (si usas terminal) o un panel de control como Syspanel (recuerda que su puerto es el 2106).
- Una copia de seguridad reciente de tu tienda. Siempre es mejor prevenir.
[WARNING] No empieces la migración sin tener una copia de seguridad completa. En caso de error, podrás restaurar todo desde cero.
Elige el momento adecuado
Programa la migración en un horario de baja actividad (por ejemplo, madrugada). Así minimizas el impacto en tus clientes. Además, pon tu tienda en modo mantenimiento durante el proceso. En PrestaShop puedes hacerlo desde el panel de administración: Parámetros de la tienda > Mantenimiento.
Paso 1: Haz una copia de seguridad completa
La base de una migración exitosa es una copia de seguridad impecable. No te confíes.
1.1. Copia los archivos de la tienda
Conéctate al servidor antiguo mediante FTP o SFTP. Localiza la carpeta raíz de tu PrestaShop (normalmente es public_html, www o htdocs). Descarga todo su contenido a tu ordenador. Si tienes muchos archivos (imágenes, módulos), usa un compresor ZIP desde el panel de control para ahorrar tiempo.
[TIP] Si usas Syspanel, ve a la sección "Archivos" y comprime la carpeta directamente. Luego descarga el ZIP.
1.2. Exporta la base de datos
Accede a phpMyAdmin en el servidor antiguo. Selecciona la base de datos de tu tienda (suele llamarse algo como prestashop_db). Ve a la pestaña "Exportar" y elige el método "Rápido" con formato SQL. Descarga el archivo .sql.
[INFO] La base de datos contiene todos los productos, clientes, pedidos y configuraciones. Sin ella, tu tienda no funcionará.
Paso 2: Prepara el nuevo servidor
Ahora necesitas configurar el entorno en el servidor destino. Si usas un panel como Syspanel, el proceso es más visual.
2.1. Crea una base de datos nueva
En tu nuevo servidor, accede a la herramienta de bases de datos (phpMyAdmin o similar). Crea una nueva base de datos con un nombre descriptivo, por ejemplo tienda_nueva. También crea un usuario con todos los privilegios sobre esa base. Anota el nombre de la base, el usuario y la contraseña.
2.2. Sube los archivos de PrestaShop
Conéctate al nuevo servidor vía FTP. Sube todos los archivos que descargaste (o el ZIP descomprimido) a la carpeta raíz correspondiente. Si usas Syspanel, puedes usar el gestor de archivos integrado.
2.3. Importa la base de datos
En phpMyAdmin del nuevo servidor, selecciona la base que acabas de crear. Ve a la pestaña "Importar" y elige el archivo .sql que descargaste. Haz clic en "Continuar". Dependiendo del tamaño, puede tardar unos segundos o minutos.
[WARNING] Si el archivo SQL es muy grande (más de 50 MB), puede dar error. En ese caso, usa herramientas como BigDump o divide el archivo en partes.
Paso 3: Configura el archivo settings.inc.php
Este es el paso más delicado. PrestaShop guarda la configuración de conexión a la base de datos en un archivo llamado settings.inc.php. Debes actualizarlo con los datos del nuevo servidor.
3.1. Localiza el archivo
Está en la carpeta app/config/ de tu instalación de PrestaShop. Ábrelo con un editor de texto (Notepad++ o similar).
3.2. Modifica los parámetros
Busca las siguientes líneas y cámbialas por los datos de tu nueva base:
define('_DB_SERVER_', 'localhost'); // Normalmente 'localhost', pero puede ser una IP
define('_DB_NAME_', 'nombre_de_tu_nueva_base');
define('_DB_USER_', 'usuario_de_tu_nueva_base');
define('_DB_PASSWD_', 'contraseña_de_tu_nueva_base');
Guarda el archivo y ciérralo.
[TIP] Si tu nuevo servidor usa un host de base de datos diferente (por ejemplo,
mysql.tudominio.com), cámbialo en_DB_SERVER_.
Paso 4: Actualiza las URLs y rutas
Tu tienda ahora está en un servidor diferente. Es posible que las rutas absolutas o las URLs hayan cambiado.
4.1. Revisa las URLs en la base de datos
Conéctate a phpMyAdmin en el nuevo servidor. Selecciona tu base y ve a la tabla ps_configuration (el prefijo ps_ puede variar). Busca las filas con name igual a PS_SHOP_DOMAIN y PS_SHOP_DOMAIN_SSL. Actualiza sus valores con el nuevo dominio o IP.
4.2. Cambia las rutas de archivos
Si cambiaste la carpeta raíz (por ejemplo, de /home/usuario/public_html a /home/usuario2/www), debes actualizar las rutas en la base. Busca en la tabla ps_shop_url y modifica los campos physical_uri si es necesario.
[INFO] Si mantienes el mismo dominio y la misma estructura de carpetas, este paso suele ser innecesario. Pero es bueno verificarlo.
Paso 5: Verifica la migración
Antes de anunciar que todo está listo, haz pruebas exhaustivas.
5.1. Accede a la tienda
Escribe la URL de tu tienda en el navegador. Deberías ver la página principal. Si ves un error, revisa los logs del servidor (en Syspanel puedes verlos en la sección "Registros").
5.2. Prueba funciones clave
- Registro de cliente: Crea una cuenta de prueba.
- Carrito de compra: Añade productos y simula un pedido.
- Panel de administración: Accede a
/adminy verifica que puedas gestionar productos. - Imágenes: Asegúrate de que todas las imágenes de productos se carguen.
5.3. Corrige errores comunes
- Error 500: Generalmente por permisos incorrectos. En la carpeta raíz, da permisos 755 a las carpetas y 644 a los archivos.
- Página en blanco: Revisa el archivo
settings.inc.phpo los logs de errores. - Enlaces rotos: Usa herramientas como "Broken Link Checker" para identificar problemas.
[TIP] Si usas Syspanel, puedes reiniciar servicios como Apache o Nginx desde el panel en un solo clic.
Paso 6: Actualiza los DNS (opcional, pero común)
Si cambiaste de servidor pero mantienes el mismo dominio, deberás actualizar los DNS para que apunten al nuevo servidor. Esto puede tardar entre 24 y 48 horas en propagarse.
6.1. Obtén la IP del nuevo servidor
En el panel de tu nuevo servidor (por ejemplo, Syspanel), busca la dirección IP pública. Anótala.
6.2. Modifica los registros DNS
En el panel de tu proveedor de dominio, edita los registros A (para el dominio principal) y CNAME (para www). Cambia la IP antigua por la nueva.
[WARNING] Durante la propagación DNS, algunos usuarios verán la tienda antigua y otros la nueva. Para evitar confusiones, mantén la tienda en modo mantenimiento hasta que la propagación termine.
Preguntas frecuentes (FAQ)
Aquí respondo las dudas más comunes que recibo como técnico de soporte.
¿Puedo migrar sin perder los pedidos en curso?
Sí, siempre que hagas la copia de seguridad justo antes de migrar. Los pedidos nuevos que lleguen durante el proceso se perderán, por eso es importante hacerlo en horas bajas.
¿Qué hago si el nuevo servidor tiene una versión diferente de PHP?
PrestaShop es sensible a la versión de PHP. Consulta los requisitos de tu versión de PrestaShop (por ejemplo, 1.7 requiere PHP 7.1 o superior). Si no coincide, actualiza o degrada PHP en el nuevo servidor. En Syspanel puedes cambiar la versión de PHP por dominio.
¿Es necesario migrar también los módulos y temas?
Sí, porque están incluidos en los archivos que copiaste. Sin embargo, algunos módulos tienen licencias atadas a una IP o dominio. Si cambiaste de dominio, deberás reactivar las licencias.
¿Puedo usar un plugin de migración?
Existen módulos de pago que automatizan el proceso, como "PrestaShop Migration". Son útiles si no quieres hacerlo manualmente, pero igual requieren acceso a ambos servidores.
¿Cómo verifico que la migración fue exitosa?
Además de las pruebas visuales, revisa los logs de errores del servidor. Si no hay errores y todo funciona, ¡enhorabuena!
Consejos finales para un SysAdmin novato
- Haz siempre una copia de seguridad antes de cualquier cambio. No solo de la tienda, sino también de la base de datos.
- Documenta cada paso. Si algo sale mal, sabrás dónde mirar.
- Prueba en un subdominio primero. Si tienes dudas, migra a un subdominio de prueba (ej.
test.tudominio.com) antes de tocar el sitio principal. - Usa herramientas de monitoreo. Después de migrar, monitorea el rendimiento de tu tienda durante unos días.
Migrar PrestaShop a un nuevo servidor no tiene por qué ser una pesadilla. Con esta guía, paso a paso, podrás hacerlo fácilmente. Recuerda que como SysAdmin, la paciencia y la organización son tus mejores aliados.
Si te encuentras con algún problema, revisa los foros oficiales de PrestaShop o consulta la documentación de tu panel de control. ¡Buena suerte con tu tienda online!
