Cómo mover PrestaShop a un nuevo servidor sin tiempo de inactividad
Por qué la migración de servidor requiere planificación
Mover una tienda PrestaShop a un nuevo servidor es una de las operaciones más críticas. Con una planificación adecuada, puedes reducir el tiempo de inactividad a minutos — o incluso lograr una transición sin interrupciones.
Lista de verificación pre-migración
- Verificar requisitos del nuevo servidor
- Documentar la configuración actual
- Listar todos los dominios y subdominios
- Identificar archivos personalizados
- Planificar el certificado SSL
Fase 1 - Preparar el nuevo servidor
sudo apt update
sudo apt install apache2 mysql-server php8.1 php8.1-mysql \
php8.1-gd php8.1-curl php8.1-intl php8.1-mbstring \
php8.1-zip php8.1-xml php8.1-bcmath
sudo a2enmod rewrite ssl headers expiresConfigurar PHP
memory_limit = 512M
max_execution_time = 300
post_max_size = 64M
upload_max_filesize = 64MCrear la base de datos
CREATE DATABASE prestashop CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'ps_user'@'localhost' IDENTIFIED BY 'contrasena_fuerte';
GRANT ALL PRIVILEGES ON prestashop.* TO 'ps_user'@'localhost';Fase 2 - Transferir archivos
rsync -avz --progress -e ssh \
/var/www/html/prestashop/ \
user@nuevo-servidor:/var/www/html/prestashop/
find /var/www/html/prestashop -type d -exec chmod 755 {} \;
find /var/www/html/prestashop -type f -exec chmod 644 {} \;
chown -R www-data:www-data /var/www/html/prestashopFase 3 - Transferir la base de datos
mysqldump -u root -p --single-transaction --routines --triggers \
prestashop > /tmp/prestashop_db.sql
scp /tmp/prestashop_db.sql user@nuevo-servidor:/tmp/
mysql -u ps_user -p prestashop < /tmp/prestashop_db.sqlFase 4 - Actualizar configuración
Edita app/config/parameters.php con las nuevas credenciales. NO cambies las URLs de la tienda.
Fase 5 - Probar en el nuevo servidor
Modifica tu archivo hosts local para apuntar al nuevo servidor y prueba todo el sitio a fondo.
Fase 6 - El cambio
- Bajar el TTL DNS 48 horas antes
- Poner la tienda vieja en mantenimiento
- Sincronización final de la base de datos
- Sincronización final de archivos
- Cambiar los registros DNS
- Sacar la nueva tienda del mantenimiento
Fase 7 - Verificación post-migración
- Limpiar todas las cachés
- Regenerar el .htaccess
- Verificar SSL
- Probar envío de emails
- Verificar tareas cron
- Mantener ambos servidores 48-72 horas
Trampas comunes de migración
- Rutas hardcodeadas en archivos de módulos
- Configuración de email
- URLs de imágenes
- Contenido mixto después de SSL
¿Le resultó útil esta respuesta?
¿Aún tiene preguntas?
Can't find what you're looking for? Send us your question and we'll get back to you quickly.