Comment déplacer PrestaShop vers un nouveau serveur sans temps d'arrêt
Pourquoi la migration de serveur nécessite une planification
Déplacer une boutique PrestaShop vers un nouveau serveur est l'une des opérations les plus critiques que vous puissiez effectuer. Avec une bonne planification, vous pouvez réduire le temps d'arrêt à quelques minutes — voire atteindre une transition transparente sans temps d'arrêt visible.
Checklist pré-migration
- Vérifier les exigences du nouveau serveur
- Documenter la configuration actuelle
- Lister tous les domaines et sous-domaines
- Identifier les fichiers personnalisés
- Prévoir le certificat SSL
Phase 1 - Préparer le nouveau serveur
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 expiresConfigurer PHP
memory_limit = 512M
max_execution_time = 300
post_max_size = 64M
upload_max_filesize = 64MCréer la base de données
CREATE DATABASE prestashop CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'ps_user'@'localhost' IDENTIFIED BY 'mot_de_passe_fort';
GRANT ALL PRIVILEGES ON prestashop.* TO 'ps_user'@'localhost';Phase 2 - Transférer les fichiers
rsync -avz --progress -e ssh \
/var/www/html/prestashop/ \
user@nouveau-serveur:/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/prestashopPhase 3 - Transférer la base de données
mysqldump -u root -p --single-transaction --routines --triggers \
prestashop > /tmp/prestashop_db.sql
scp /tmp/prestashop_db.sql user@nouveau-serveur:/tmp/
mysql -u ps_user -p prestashop < /tmp/prestashop_db.sqlPhase 4 - Mettre à jour la configuration
Éditez app/config/parameters.php avec les nouvelles informations de base de données. Ne changez PAS les URLs de la boutique.
Phase 5 - Tester sur le nouveau serveur
Modifiez votre fichier hosts local pour pointer vers le nouveau serveur et testez tout le site en profondeur.
Phase 6 - Le basculement
- Baisser le TTL DNS 48h à l'avance
- Mettre l'ancienne boutique en mode maintenance
- Synchronisation finale de la base de données
- Synchronisation finale des fichiers
- Changer les enregistrements DNS
- Sortir la nouvelle boutique du mode maintenance
Phase 7 - Vérification post-migration
- Vider tous les caches
- Régénérer le .htaccess
- Vérifier le SSL
- Tester l'envoi d'emails
- Vérifier les tâches cron
- Garder les deux serveurs actifs pendant 48-72 heures
Pièges courants de migration
- Chemins codés en dur dans les fichiers de modules
- Configuration email
- URLs des images
- Contenu mixte après SSL
Cette réponse vous a-t-elle été utile ?
Vous avez encore des questions ?
Can't find what you're looking for? Send us your question and we'll get back to you quickly.