Changer le nom de domaine PrestaShop : guide complet sans coupure
Guide pas à pas pour migrer votre boutique PrestaShop vers un nouveau nom de domaine sans perte de données, de SEO ni de temps d'arrêt. Apache, Nginx, base de données.
En bref : Pour changer le nom de domaine d'une boutique PrestaShop, il faut intervenir à trois niveaux : configurer le nouveau domaine sur le serveur web (Apache ou Nginx), mettre à jour les tables ps_shop_url et ps_configuration en base de données, puis mettre en place des redirections 301 depuis l'ancien domaine pour préserver le référencement.
Pourquoi changer de nom de domaine sur PrestaShop ?
Rebranding, rachat d'un domaine plus court, passage d'un .fr à un .com, fusion de boutiques… Les raisons de migrer votre PrestaShop vers un nouveau nom de domaine sont nombreuses. L'opération n'est pas complexe en soi, mais elle touche simultanément le serveur web, la base de données et le référencement. Une étape oubliée et c'est la page blanche — ou pire, un effondrement SEO silencieux.
Ce guide couvre la procédure complète, que vous soyez sur un serveur dédié (Apache ou Nginx) ou sur un hébergement mutualisé.
Étape 1 — Préparer la migration
Sauvegarde intégrale
Avant toute manipulation :
# Sauvegarde des fichiers
tar -czf /backup/prestashop_$(date +%Y%m%d).tar.gz /var/www/html/monsite.com/
# Sauvegarde de la base de données
mysqldump -u root -p prestashop_db > /backup/prestashop_db_$(date +%Y%m%d).sql
Conservez ces archives en dehors du serveur (S3, disque local, etc.). En cas de problème, vous pourrez restaurer l'état initial en quelques minutes.
Vérifier les prérequis DNS
Avant de toucher au serveur, configurez les enregistrements DNS du nouveau domaine chez votre registrar :
Réduisez le TTL à 300 secondes (5 minutes) quelques jours avant la migration. La propagation DNS peut prendre jusqu'à 48 heures, mais un TTL court accélère la bascule.
Étape 2 — Configurer le serveur web
Option A : Apache (serveur dédié / VPS)
Sur une distribution Debian/Ubuntu, créez un nouveau VirtualHost :
sudo nano /etc/apache2/sites-available/nouveaudomaine.com.conf
Contenu du fichier :
<VirtualHost *:80>
ServerAdmin admin@nouveaudomaine.com
ServerName nouveaudomaine.com
ServerAlias www.nouveaudomaine.com
DocumentRoot /var/www/html/nouveaudomaine.com/prestashop
<Directory /var/www/html/nouveaudomaine.com/prestashop>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/nouveaudomaine_error.log
CustomLog ${APACHE_LOG_DIR}/nouveaudomaine_access.log combined
</VirtualHost>
Activez le site et rechargez Apache :
sudo a2ensite nouveaudomaine.com.conf
sudo apache2ctl configtest
sudo systemctl reload apache2
Point important : utilisez
reloadet nonrestart. Le reload applique la configuration sans couper les connexions en cours.
Si vos fichiers PrestaShop restent au même emplacement physique sur le disque, adaptez simplement le DocumentRoot vers le dossier existant. Il n'est pas nécessaire de déplacer les fichiers.
Option B : Nginx
Sur les infrastructures modernes (et c'est la configuration que je recommande en 2026), Nginx est souvent préféré :
server {
listen 80;
server_name nouveaudomaine.com www.nouveaudomaine.com;
root /var/www/html/nouveaudomaine.com/prestashop;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2|svg)$ {
expires 30d;
access_log off;
}
}
sudo nginx -t
sudo systemctl reload nginx
Option C : Hébergement mutualisé
Sur un hébergement mutualisé (OVH, o2switch, Infomaniak…), vous n'avez pas d'accès SSH au VirtualHost. La procédure est différente :
- Ajoutez le nouveau domaine dans le panel d'administration de l'hébergeur
- Pointez-le vers le répertoire de votre PrestaShop
- L'hébergeur génère automatiquement la configuration serveur
- **Domaine** : `nouveaudomaine.com`
- **Domaine SSL** : `nouveaudomaine.com`
- Les images produit s'affichent correctement (pas de liens cassés vers l'ancien domaine)
- Le panier et le tunnel de commande fonctionnent
- Les modules de paiement sont opérationnels (certains sont liés au domaine)
- Les emails transactionnels contiennent le nouveau domaine
- Le sitemap XML pointe vers les nouvelles URLs
- **Google Search Console :** ajoutez le nouveau domaine comme propriété et utilisez l'outil de changement d'adresse
- **Google Analytics / GA4 :** mettez à jour l'URL du flux de données
- **Google Merchant Center :** si vous faites du Shopping, mettez à jour l'URL de la boutique
- **Réseaux sociaux :** mettez à jour les liens dans vos profils
- **Modules de paiement :** Stripe, PayPal et autres vérifient souvent le domaine — reconfigurez les webhooks
Étape 3 — Mettre à jour la base de données PrestaShop
C'est l'étape la plus critique. PrestaShop stocke l'URL de la boutique en base de données dans la table ps_shop_url.
Via le back-office (méthode recommandée)
PrestaShop 8.x : Rendez-vous dans Paramètres de la boutique → Trafic & SEO → section « URL de la boutique ».
Modifiez :
PrestaShop 1.6 / 1.7 : Le chemin est Préférences → SEO & URLs.
Via SQL (si le back-office est inaccessible)
Si le changement de domaine rend le back-office inaccessible (boucle de redirection, page blanche), intervenez directement en base :
-- Mettre à jour l'URL principale
UPDATE ps_shop_url
SET domain = 'nouveaudomaine.com',
domain_ssl = 'nouveaudomaine.com'
WHERE main = 1;
-- Vérifier les valeurs de configuration associées
UPDATE ps_configuration
SET value = 'nouveaudomaine.com'
WHERE name IN ('PS_SHOP_DOMAIN', 'PS_SHOP_DOMAIN_SSL');
Attention au préfixe des tables : remplacez
ps_par votre préfixe réel si vous l'avez personnalisé à l'installation.
Mettre à jour le fichier parameters.php
Sur PrestaShop 8.x, vérifiez le fichier app/config/parameters.php. Sur les versions 1.6, c'est config/settings.inc.php :
// PrestaShop 8.x — app/config/parameters.php
'ps_shop_domain' => 'nouveaudomaine.com',
'ps_shop_domain_ssl' => 'nouveaudomaine.com',
Étape 4 — Vider tous les caches
PrestaShop met en cache de nombreux éléments qui contiennent l'ancien domaine :
# Supprimer le cache Smarty
rm -rf var/cache/prod/*
rm -rf var/cache/dev/*
# Pour PrestaShop 1.6
rm -rf cache/smarty/compile/*
rm -rf cache/smarty/cache/*
Dans le back-office : Paramètres avancés → Performances → Vider le cache.
Étape 5 — Activer le HTTPS sur le nouveau domaine
Avec Let's Encrypt et Certbot, l'obtention d'un certificat SSL est gratuite et automatique :
# Apache
sudo certbot --apache -d nouveaudomaine.com -d www.nouveaudomaine.com
# Nginx
sudo certbot --nginx -d nouveaudomaine.com -d www.nouveaudomaine.com
Puis dans le back-office PrestaShop, activez « Activer le SSL » et « Forcer le SSL sur toutes les pages » dans Paramètres de la boutique → Général.
Étape 6 — Redirections 301 depuis l'ancien domaine
C'est la clé pour préserver votre référencement. Chaque URL de l'ancien domaine doit rediriger en 301 vers son équivalent sur le nouveau.
.htaccess (Apache)
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?anciendomaine\.com$ [NC]
RewriteRule ^(.*)$ https://nouveaudomaine.com/$1 [R=301,L]
Bloc Nginx
server {
listen 80;
listen 443 ssl;
server_name anciendomaine.com www.anciendomaine.com;
ssl_certificate /etc/letsencrypt/live/anciendomaine.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/anciendomaine.com/privkey.pem;
return 301 https://nouveaudomaine.com$request_uri;
}
Conservez l'ancien domaine et ses redirections pendant au moins 12 mois. Google a besoin de temps pour indexer les nouvelles URLs.
Étape 7 — Vérifications post-migration
Une checklist rigoureuse après la bascule :
# Vérifier que le nouveau domaine répond
curl -I https://nouveaudomaine.com
# Attendu : HTTP/2 200
# Vérifier la redirection 301 depuis l'ancien domaine
curl -I https://anciendomaine.com
# Attendu : HTTP/1.1 301 Moved Permanently
# Location: https://nouveaudomaine.com/
# Vérifier le back-office
curl -I https://nouveaudomaine.com/admin-dev/
Points à contrôler manuellement :
Étape 8 — Mettre à jour les outils externes
Dernière étape, souvent oubliée :
Erreurs fréquentes à éviter
Questions fréquentes
Tout ce que vous devez savoir sur ce sujet.
Un projet PrestaShop ?
Discutons-en directement.
193 projets livrés
Lire sur le blog

Alexandre Carette
Expert PrestaShop & Architecture E-commerce
Développeur PrestaShop depuis 2014, 193 projets livrés. Je conçois des architectures headless Nuxt + PrestaShop et des outils d'automatisation IA pour les e-commerçants.