Le blog

Date : 27 octobre 2026
Catégorie : E-commerce
Équipements réseau et serveurs dans un centre de données
Sommaire

Pour changer le serveur d'une boutique PrestaShop sans perdre de commande, on prépare le nouveau serveur avec une version de PHP compatible, on y copie fichiers et base, on teste la boutique avant de toucher au DNS, puis on fait une dernière synchronisation de la base en mode maintenance juste avant la bascule. La coupure se limite à quelques minutes, annoncées et maîtrisées, au lieu d'une boutique cassée pendant des heures.

Ce guide suit la documentation officielle de PrestaShop (versions 1.6 à 9), consultée le 27 octobre 2026. Il couvre le cas le plus courant : même nom de domaine, nouvel hébergeur ou nouveau serveur.

Changer de serveur n'est pas changer de version

C'est la confusion qui casse le plus de boutiques. Un nouvel hébergeur propose souvent PHP 8 par défaut. Or chaque version de PrestaShop n'accepte qu'une plage précise de versions de PHP : une boutique 1.7 copiée telle quelle sur un serveur en PHP 8 affiche une page blanche ou une erreur 500. Voici les plages officielles :

Version de PrestaShopPHP acceptéPHP recommandé
1.6.1.x5.2 à 7.17.1
1.7.0 à 1.7.35.4 à 7.17.1
1.7.45.6 à 7.17.1
1.7.5 et 1.7.65.6 à 7.27.2
1.7.77.1 à 7.37.3
1.7.87.1 à 7.47.4
8.0 à 8.27.2 à 8.18.1
9.08.1 à 8.48.4
9.18.1 à 8.58.5

Deux conséquences pratiques. D'abord, le nouveau serveur doit proposer la version de PHP de votre boutique, quitte à choisir une version plus ancienne dans son panneau. Ensuite, une boutique 1.6 ou 1.7 ne peut tourner que sur des versions de PHP qui ne reçoivent plus de correctifs de sécurité : le déménagement règle un problème d'hébergeur, pas ce risque-là. Pour passer à PHP 8, il faut migrer la boutique vers PrestaShop 9. Le détail par version est dans notre article sur PrestaShop et PHP 8.

Préparer le nouveau serveur

Avant de copier quoi que ce soit, vérifiez que le serveur d'arrivée remplit les conditions de PrestaShop. Pour PrestaShop 9, la documentation demande Apache 2.4 ou Nginx, MySQL 5.7 ou MariaDB 10.2 au minimum, un memory_limit d'au moins 512 Mo, allow_url_fopen activé et une liste d'extensions PHP : CURL, DOM, Fileinfo, GD, Iconv, Intl, JSON, Mbstring, OpenSSL, PDO et PDO MySQL, SimpleXML, Zip.

Le plus simple est l'outil officiel phppsinfo : un fichier PHP à déposer sur le serveur, qui compare la configuration aux exigences de PrestaShop. Supprimez-le une fois le contrôle fait, il affiche des informations sur votre serveur.

Relevez aussi ce que l'ancien serveur faisait sans que personne n'y pense :

  • les tâches planifiées (cron) : flux de prix, relances de paniers, synchronisation de stock, sauvegardes ;
  • les e-mails : PrestaShop envoie-t-il par la fonction mail du serveur ou par un SMTP ? Si c'est le serveur, son adresse IP doit être autorisée dans l'enregistrement SPF du domaine ;
  • les listes d'adresses IP autorisées chez vos partenaires : transporteur, ERP, logiciel de caisse ou banque qui n'accepte que l'IP de l'ancien serveur ;
  • les réglages PHP spécifiques (taille maximale d'envoi de fichier, durée d'exécution) que vos imports de catalogue utilisent.

Copier fichiers et base de données

La copie se fait en deux temps : une première copie complète, faite sans pression pendant que la boutique tourne, puis une resynchronisation de la base au moment de la bascule (voir plus bas).

  1. Fichiers : copiez tout le dossier de la boutique, images produits et modules compris, de préférence de serveur à serveur (rsync ou SFTP) plutôt que par votre ordinateur. Conservez les droits d'écriture sur les dossiers que PrestaShop modifie (img, var ou cache, upload, download, modules, themes).
  2. Base de données : exportez-la avec mysqldump ou l'outil de l'hébergeur, en UTF-8, puis importez-la dans une base créée sur le nouveau serveur.
  3. Connexion à la base : sur PrestaShop 1.7, 8 et 9, les accès sont dans app/config/parameters.php (sur 1.6 : config/settings.inc.php). Modifiez uniquement l'hôte, le nom de la base, l'utilisateur et le mot de passe. Gardez le reste du fichier tel quel : il contient aussi les clés propres à votre boutique, qu'une réinstallation remplacerait.
  4. Cache : la documentation demande de vider le cache après toute modification de ce fichier, en supprimant le contenu de var/cache/prod et var/cache/dev (sur 1.6, les dossiers de cache Smarty).

Tester la boutique avant de changer le DNS

PrestaShop redirige vers le domaine enregistré dans sa base. Pour tester le nouveau serveur avec le vrai nom de domaine sans que vos clients y arrivent, modifiez le fichier hosts de votre ordinateur : il force votre seule machine à joindre la nouvelle adresse IP. Vous naviguez alors sur la nouvelle copie comme un client le fera après la bascule.

Le parcours à vérifier :

  • page d'accueil, catégories, fiches produits avec leurs images et déclinaisons ;
  • recherche, création de compte, connexion à un compte client existant ;
  • panier, calcul des frais de port, paiement en mode test si votre module le permet ;
  • e-mail de confirmation de commande bien reçu ;
  • back-office : connexion, liste des commandes, modules, et page Paramètres avancés > Informations qui signale les fichiers modifiés ou les droits manquants.

Pensez au certificat HTTPS : il doit être prêt sur le nouveau serveur avant la bascule, sinon les visiteurs verront une alerte de sécurité. Certains hébergeurs ne peuvent le générer qu'une fois le DNS pointé : demandez-leur la marche à suivre à l'avance.

Basculer sans perdre de commande

Entre la première copie et la bascule, la boutique a continué de vendre. Si vous basculez sur l'ancienne copie de la base, les commandes et inscriptions des derniers jours disparaissent. La bascule se fait donc ainsi :

  1. Quelques jours avant, baissez la durée de vie (TTL) de l'enregistrement DNS du domaine, par exemple à quelques minutes. Les résolveurs gardent l'ancienne adresse pendant la durée du TTL : un TTL court rend la bascule rapide pour tout le monde.
  2. Le jour J, à une heure creuse, mettez l'ancienne boutique en maintenance (Paramètres de la boutique > Général > Maintenance), en ajoutant votre adresse IP pour garder l'accès.
  3. Coupez les connecteurs qui écrivent dans la base : la documentation précise que le Webservice reste actif en mode maintenance. Une synchronisation de stock continuerait donc d'écrire dans l'ancienne base.
  4. Réexportez la base de l'ancien serveur et réimportez-la sur le nouveau, avec les fichiers ajoutés depuis la première copie (nouvelles images, factures).
  5. Changez le DNS vers la nouvelle adresse IP, puis contrôlez depuis un autre réseau, un téléphone en 4G par exemple, que vous arrivez bien sur le nouveau serveur.
  6. Retirez la maintenance sur le nouveau serveur, réactivez les connecteurs et les tâches planifiées, et passez une commande réelle de contrôle.

Gardez l'ancien serveur, boutique en maintenance, pendant au moins une semaine. Si un problème apparaît, revenir en arrière ne demande qu'un changement de DNS. C'est aussi votre sauvegarde la plus récente : vérifiez qu'elle existe avant de résilier l'ancien contrat (notre méthode de sauvegarde PrestaShop s'applique dès le nouveau serveur).

Et si le nom de domaine change aussi ?

C'est un autre chantier. Il faut déclarer le nouveau domaine dans Paramètres de la boutique > Trafic et SEO (domaine de la boutique et domaine SSL), régénérer le fichier .htaccess, et surtout rediriger chaque ancienne URL vers la nouvelle en 301 pour ne pas perdre le référencement. Faites-le dans une seconde étape, une fois le changement de serveur validé : deux changements simultanés rendent le diagnostic impossible si quelque chose casse.

Les erreurs fréquentes après un changement de serveur

SymptômeCause la plus probableVérification
Page blanche ou erreur 500Version de PHP hors de la plage de la boutique, extension manquanteJournal d'erreurs PHP, outil phppsinfo
« Link to database cannot be established »Accès à la base erronés dans le fichier de configurationHôte, nom de base, utilisateur, mot de passe
Redirection vers l'ancien domaine ou boucleDomaine enregistré en base différent, HTTPS forcé sans certificatTrafic et SEO, certificat du nouveau serveur
Images manquantes, mise en page casséeFichiers incomplets, droits d'écriture, cache ancienDossier img, droits, vider le cache
Plus d'e-mails de commandeEnvoi par le serveur non autorisé dans le SPF, SMTP non reprisParamètres avancés > E-mail, envoi de test
Stock ou prix qui ne se mettent plus à jourTâches cron non recréées, IP du connecteur non autoriséeCrontab, journaux du connecteur

Une erreur de mémoire pendant un import ou une génération d'images vient en général d'un memory_limit plus bas que sur l'ancien serveur : voir notre article sur la mémoire PHP insuffisante. Si un connecteur de stock ou de comptabilité ne répond plus, la clé Webservice et ses droits sont expliqués dans notre guide de l'API PrestaShop.

Faire faire le changement de serveur

Nous préparons le serveur, faisons la copie et les tests, et menons la bascule à l'heure qui vous dérange le moins, avec l'ancien serveur gardé en secours. Le changement de serveur se fait sur devis écrit : décrivez-nous votre boutique (version, hébergeur actuel et futur). Si la boutique est déjà cassée après un déménagement, voyez notre dépannage PrestaShop en urgence. Et pour qu'un serveur reste à jour et surveillé ensuite, il y a la maintenance PrestaShop.

Sources

Questions fréquentes

Comment changer de serveur une boutique PrestaShop sans coupure ?

On prépare le nouveau serveur avec une version de PHP compatible, on y copie fichiers et base, on teste avec le fichier hosts, puis le jour J on met l'ancienne boutique en maintenance, on resynchronise la base et on change le DNS, préalablement réglé avec un TTL court. La coupure dure quelques minutes.

Peut-on mettre une boutique PrestaShop 1.7 sur un serveur en PHP 8 ?

Non. Selon la documentation officielle, PrestaShop 1.7.8 accepte PHP 7.1 à 7.4. PHP 8 demande PrestaShop 8 (jusqu'à PHP 8.1) ou PrestaShop 9 (PHP 8.1 et plus). Il faut donc choisir une version de PHP compatible sur le nouveau serveur, ou migrer la boutique.

Quel fichier modifier après avoir déplacé PrestaShop ?

Les accès à la base de données : app/config/parameters.php sur PrestaShop 1.7, 8 et 9, config/settings.inc.php sur 1.6. On change seulement l'hôte, le nom de la base, l'utilisateur et le mot de passe, puis on vide le cache.

Comment ne perdre aucune commande pendant la migration ?

En refaisant l'export de la base au moment de la bascule, boutique en maintenance et connecteurs coupés, puisque le Webservice reste actif en maintenance. On importe cette copie fraîche sur le nouveau serveur avant de changer le DNS.

Recevez ce qui concerne votre site

Choisissez vos sujets. Un e-mail quand il y a quelque chose d'utile à savoir, pas plus.

Vos sujets

Confirmation par e-mail, désinscription en un clic dans chaque envoi. Votre adresse sert uniquement à cette newsletter · Confidentialité

Nicolas Pivaut
Rédigé par

Nicolas Pivaut

Fondateur de WebSentinel, expert WordPress et PrestaShop

Dans le web depuis 2007, Nicolas a fondé WebSentinel en 2015. Il développe, maintient et sécurise lui-même des sites WordPress et PrestaShop pour des TPE, PME et e-commerçants, et intervient aussi sur les serveurs et la cybersécurité.

Articles similaires

Boutique Shopify affichée sur un écran

Migration Shopify vers Medusa : l'alternative sur mesure pour votre e-commerce

Migrer de Shopify à Medusa : pourquoi passer à une solution headless open-source. Avantages, inconvénients, budget, et quand faire la transition.

16 juin 2026E-commerce
Transformation de PrestaShop 1.6/1.7 vers la version 9 - Sécurité et modernisation

Migrer de PrestaShop 1.6 ou 1.7 vers PrestaShop 9 : le guide

Migrer une boutique PrestaShop 1.6 ou 1.7 vers la 9 : pourquoi c'est une refonte, les étapes, les pièges modules et thème, et comment garder son SEO.

3 septembre 2026E-commerce
Cartons d'expédition pour une boutique en ligne

Mettre à jour PrestaShop sans tout casser : guide 2026

Mise à jour PrestaShop 8.1 et modules sans risque. Audit des overrides, staging, rollback. Guide étape par étape pour mettre à jour en sécurité.

21 juin 2026E-commerce