Migrer WordPress vers un nouvel hébergeur sans perdre de données
Votre hébergeur actuel est trop lent, trop cher ou le support est inexistant ? La migration d’un site WordPress vers un nouvel hébergeur fait peur à beaucoup de gens, mais c’est en réalité un processus bien balisé. Ce guide couvre 3 méthodes : plugin automatique, manuelle par FTP/phpMyAdmin, et via WP-CLI. Choisissez celle qui correspond à votre niveau technique.
1. Avant la migration : préparation
Checklist pré-migration
- ☐ Sauvegarder le site complet (fichiers + base de données)
- ☐ Noter les identifiants actuels : FTP, base de données, wp-admin
- ☐ Lister les plugins actifs et leurs paramètrès importants
- ☐ Vérifier que le nouvel hébergeur supporte PHP 8.1+ et MySQL 5.7+
- ☐ Prévoir un créneau de faible trafic pour la migration (nuit ou week-end)
- ☐ Ne PAS annuler l’ancien hébergement avant d’avoir confirmé que tout fonctionne
Hébergeurs recommandés au Sénégal
| Hébergeur | Prix/an | Serveurs | Points forts |
|---|---|---|---|
| O2Switch | ~36 000 FCFA | France | Offre unique tout illimité, excellent support |
| OVH | ~24 000 FCFA | France | Fiable, bons prix, datacenter proche |
| Hostinger | ~18 000 FCFA | Europe/USA | Pas cher, interface simple, bon pour débuter |
| Infomaniak | ~35 000 FCFA | Suisse | Écologique, support excellent, hébergement premium |
| Hetzner | ~20 000 FCFA (VPS) | Allemagne/Finlande | VPS ultra-performant, prix imbattable |
2. Méthode 1 : All-in-One WP Migration (la plus simple)
Cette méthode est la plus accessible — aucune connaissance technique requise.
Sur l’ancien site
- Installez le plugin All-in-One WP Migration
- Allez dans All-in-One WP Migration → Exporter
- Cliquez « Exporter vers → Fichier »
- Attendez la création du fichier .wpress (peut prendre 5-30 minutes)
- Téléchargez le fichier sur votre ordinateur
Sur le nouvel hébergeur
- Installez WordPress sur le nouvel hébergeur (installation en 1 clic depuis cPanel ou Plesk)
- Installez le plugin All-in-One WP Migration sur ce nouveau WordPress
- Allez dans All-in-One WP Migration → Importer
- Uploadez le fichier .wpress
- Confirmez l’écrasement de la base de données
- Reconnectez-vous avec vos anciens identifiants WordPress
- Allez dans Réglages → Permaliens et cliquez « Enregistrer » (régénère le .htaccess)
Limite gratuite
La version gratuite limité l’import à 512 Mo. Si votre site est plus lourd :
- Option 1 : acheter l’extension Unlimited (69$) — rentable si vous migrez souvent
- Option 2 : réduire la taille en excluant les médias dans les paramètrès d’export, puis les transférer séparément par FTP
- Option 3 : utiliser la méthode manuelle (ci-dessous)
3. Méthode 2 : Duplicator (migration + clonage)
Sur l’ancien site
- Installez Duplicator
- Allez dans Duplicator → Paquets → Créer
- Laissez les options par défaut et cliquez « Suivant »
- Duplicator scanne votre site (vérifiez que tout est au vert)
- Cliquez « Construire » — Duplicator crée 2 fichiers :
installer.php— le script d’installationarchive.zip— l’archive complète du site
- Téléchargez les deux fichiers
Sur le nouvel hébergeur
- Créez une base de données vide sur le nouvel hébergeur (depuis cPanel → MySQL Databases)
- Uploadez les 2 fichiers (installer.php + archive.zip) à la racine du nouveau site via FTP
- Accédez à
https://nouveau-domaine.com/installer.php - Suivez l’assistant :
- Entrez les identifiants de la nouvelle base de données
- Confirmez l’URL du site
- Cliquez « Next » pour déployer
- Connectez-vous au wp-admin et vérifiez
- Supprimez installer.php du serveur (sécurité !)
4. Méthode 3 : Migration manuelle (FTP + phpMyAdmin)
Pour les sites volumineux ou quand les plugins ne fonctionnent pas.
Étape 1 : Exporter la base de données
- Connectez-vous à phpMyAdmin sur l’ancien hébergeur
- Sélectionnez la base de données WordPress
- Onglet « Exporter »
- Méthode : « Rapide » ou « Personnalisée » (si la BDD est grosse, choisissez compression gzip)
- Format : SQL
- Cliquez « Exécuter » et téléchargez le fichier .sql
Étape 2 : Transférer les fichiers
# Via FTP (FileZilla) :
# 1. Connectez-vous à l'ancien serveur
# 2. Téléchargez TOUT le dossier WordPress (/)
# - Surtout : wp-content/ (thèmes, plugins, uploads)
# - wp-config.php
# - .htaccess
# 3. Connectez-vous au nouveau serveur
# 4. Uploadez tous les fichiers à la racine
# Via SSH (plus rapide pour les gros sites) :
# Sur l'ancien serveur :
cd /var/www/html
tar -czf wordpress-backup.tar.gz .
# Transférer vers le nouveau :
scp wordpress-backup.tar.gz user@nouveau-serveur:/var/www/html/
# Sur le nouveau serveur :
cd /var/www/html
tar -xzf wordpress-backup.tar.gz
Étape 3 : Importer la base de données
- Créez une nouvelle base de données sur le nouvel hébergeur
- Ouvrez phpMyAdmin sur le nouvel hébergeur
- Sélectionnez la nouvelle base
- Onglet « Importer »
- Choisissez le fichier .sql exporté
- Cliquez « Exécuter »
Étape 4 : Modifier wp-config.php
// Mettez à jour les identifiants de la NOUVELLE base de données :
define('DB_NAME', 'nouvelle_base');
define('DB_USER', 'nouvel_utilisateur');
define('DB_PASSWORD', 'nouveau_mot_de_passe');
define('DB_HOST', 'localhost'); // ou l'adresse fournie par le nouvel hébergeur
Étape 5 : Mettre à jour les URLs (si changement de domaine)
-- Dans phpMyAdmin, exécutez ces requêtes SQL :
-- REMPLACEZ les URLs par les vôtrès
UPDATE wp_options SET option_value = 'https://nouveau-domaine.com'
WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://nouveau-domaine.com'
WHERE option_name = 'home';
-- Pour remplacer les URLs dans le contenu :
UPDATE wp_posts SET post_content = REPLACE(post_content,
'https://ancien-domaine.com', 'https://nouveau-domaine.com');
UPDATE wp_posts SET guid = REPLACE(guid,
'https://ancien-domaine.com', 'https://nouveau-domaine.com');
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value,
'https://ancien-domaine.com', 'https://nouveau-domaine.com');
Attention : les requêtes SQL ci-dessus ne gèrent pas les données sérialisées (options de thème, réglages de plugins). Utilisez plutôt le search-replace de WP-CLI :
# Search-replace sécurisé (gère les données sérialisées)
wp search-replace 'https://ancien-domaine.com' 'https://nouveau-domaine.com' --all-tables
5. Basculer le nom de domaine
Tester avant de basculer
Avant de changer les DNS, testez le site sur le nouveau serveur :
# Modifier le fichier hosts de votre ordinateur :
# Windows : C:\Windows\System32\drivers\etc\hosts
# Mac/Linux : /etc/hosts
# Ajoutez cette ligne :
IP_DU_NOUVEAU_SERVEUR votresite.com
# Cela force votre ordinateur à pointer vers le nouveau serveur
# Testez votre site dans le navigateur
# Retirez la ligne quand vous êtes satisfait
Changer les DNS
- Connectez-vous chez votre registrar (là où vous avez acheté le domaine)
- Modifiez les serveurs DNS ou les enregistrements A :
- Enregistrement A : pointez vers l’IP du nouveau serveur
- Ou NS : utilisez les nameservers du nouvel hébergeur
- Attendez la propagation DNS (2-48 heures, généralement 2-4h)
# Vérifier la propagation DNS :
# Utilisez un outil en ligne comme dnschecker.org
# Ou en ligne de commande :
nslookup votresite.com
dig votresite.com A
SSL sur le nouveau serveur
# Let's Encrypt gratuit via Certbot :
sudo certbot --apache -d votresite.com -d www.votresite.com
# Ou via cPanel :
# cPanel → SSL/TLS → Let's Encrypt → Émettre
6. Vérifications post-migration
- ☐ Page d’accueil se charge correctement
- ☐ Toutes les pages internes fonctionnent (pas de 404)
- ☐ Images affichées correctement (pas de liens cassés vers l’ancien serveur)
- ☐ Formulaires de contact fonctionnent (envoyez un test)
- ☐ WooCommerce : panier, checkout, paiements fonctionnent
- ☐ SSL actif (cadenas vert, pas de mixed content)
- ☐ Permaliens corrects (Réglages → Permaliens → Enregistrer)
- ☐ Emails WordPress envoyés (testez la réinitialisation de mot de passe)
- ☐ Cron jobs fonctionnent (publications programmées, sauvegardes auto)
- ☐ Google Search Console : aucune erreur d’exploration
- ☐ Vitesse du site (testez avec PageSpeed Insights — le site doit être plus rapide qu’avant !)
7. Erreurs courantes de migration
| Problème | Cause | Solution |
|---|---|---|
| Page blanche | Incompatibilité PHP | Vérifier la version PHP du nouveau serveur |
| Erreur de BDD | Identifiants wp-config.php | Corriger DB_NAME, DB_USER, DB_PASSWORD, DB_HOST |
| Images cassées | URLs pas mises à jour | Exécuter search-replace avec WP-CLI |
| CSS/design cassé | Données sérialisées corrompues | Ne PAS utiliser SQL brut, utiliser WP-CLI search-replace |
| Redirections infinies | HTTP/HTTPS mal configuré | Forcer HTTPS dans wp-config.php et .htaccess |
| 404 sur les pages | Permaliens | Réglages → Permaliens → Enregistrer |
| Emails non envoyés | SMTP pas configuré | Installer WP Mail SMTP + configurer Brevo |
8. Migration avec WP-CLI (la plus rapide)
# Sur l'ancien serveur :
# 1. Exporter la BDD
wp db export old-site.sql
# 2. Créer l'archive des fichiers
tar -czf wp-files.tar.gz wp-content/
# 3. Transférer
scp old-site.sql wp-files.tar.gz user@new-server:/var/www/html/
# Sur le nouveau serveur :
# 4. Installer WordPress frais
wp core download --locale=fr_FR
wp config create --dbname=wp_db --dbuser=user --dbpass=pass
wp db create
# 5. Importer la BDD
wp db import old-site.sql
# 6. Restaurer les fichiers
tar -xzf wp-files.tar.gz
# 7. Mettre à jour les URLs
wp search-replace 'https://ancien.com' 'https://nouveau.com' --all-tables --precise
# 8. Régénérer les permaliens
wp rewrite flush
# 9. Vérifier
wp core verify-checksums
wp plugin list
wp option get siteurl
La migration WordPress est une opération que vous ne ferez peut-être qu’une fois, mais elle doit être faite correctement. Prenez le temps de tester sur le nouveau serveur avant de basculer les DNS, et gardez l’ancien hébergement actif pendant au moins 2 semaines après la migration, au cas où.