Migrer un site WordPress d’un hébergement vers un autre peut paraître compliqué au premier abord.
Ce guide vous explique comment déplacer votre site WordPress manuellement, sans plugin, et comment transférer également vos comptes e-mails associés à votre nom de domaine.
La méthode en FTP est universelle, gratuite et fonctionne sur tout type d’hébergement, même si elle demande un peu de temps.
Prérequis avant de commencer
Avant de copier vos fichiers WordPress, désactivez les firewalls éventuels (comme Wordfence) et les plugins de cache (LiteSpeed Cache, WP Rocket, etc.). C’est une étape importante, car les deux hébergements peuvent avoir des environnements différents.
Munissez-vous ensuite de vos identifiants cPanel (ou équivalents) pour les deux hébergements.
Ces accès figurent généralement dans les e-mails de bienvenue envoyés lors de la création des comptes d’hébergement.
Dans le cas de Wordfence
Dans le cas de Wordfence, il ne suffit pas de désactiver le plugin, il faut désactiver la protection étendue depuis ses paramètres internes :
- Dans le menu latéral de WordPress, ouvrez Wordfence → Firewall.
- Descendez jusqu’à la section Basic Firewall Options.
- Si le pare-feu est en mode étendu, un bouton Remove Extended Protection s’affiche.
- Cliquez sur Remove Extended Protection.
- Wordfence repasse alors automatiquement en Basic WordPress Protection (mode standard).
Cette action :
- retire la directive PHP
auto_prepend_filepropre à votre ancien environnement - évite les erreurs du type :
Failed opening required '/home/ovhuser/.../wordfence-waf.php' - et permet de copier le site vers le nouvel emplacement sans désinstaller le plugin.
Une fois la migration terminée, vous pourrez réactiver la protection étendue depuis la même zone Basic Firewall Options en cliquant sur Optimize the Firewall, laissez Wordfence sélectionner le mode recommandé automatiquement.
Wordfence créera alors un nouveau fichier wordfence-waf.php et mettra à jour la directive PHP auto_prepend_file avec le chemin correspondant à votre nouvel hébergement.
Le pare-feu passera en Extended Protection, garantissant une exécution du WAF avant WordPress.
Si vous souhaitez plus d'information sur comment configurer le WAF de Wordfence chez O2switch lisez mon article : Configurer le mode étendu de Wordfence sur un hébergement o2switch (guide complet)
Étapes pour déplacer un site WordPress vers un autre hébergeur
1. Sauvegarder et transférer les comptes e-mails
Si votre nom de domaine héberge aussi des comptes e-mails, il faut les migrer avant le changement DNS.
Deux cas possibles :
- Si votre hébergeur utilise cPanel (comme o2switch) : copiez le dossier
/mail/nom-de-domaine.frpar FTP du serveur source vers le nouveau serveur. - Si vous êtes chez OVH ou un autre fournisseur sans accès FTP aux mails : passez par un client mail (Thunderbird, Outlook, Mail pour macOS) ou l’outil officiel OVH Mail Migrator.
Effectuez cette opération avant de modifier le pointage du nom de domaine.
2. Copier les fichiers WordPress
Les fichiers WordPress se trouvent dans le répertoire principal de votre site, celui qui contient notamment :
wp-admin
wp-content
wp-includes
Si vos hébergements disposent d’un gestionnaire de fichiers
Certains hébergeurs (o2switch, Infomaniak, IONOS, Hostinger, etc.) proposent un gestionnaire de fichiers intégré dans le panneau de gestion (souvent accessible via cPanel ou une interface propriétaire).
- Connectez-vous à votre panneau d’hébergement et ouvrez le gestionnaire de fichiers.
- Accédez au dossier racine de votre site (souvent
/wwwou/public_html). - Sélectionnez l’ensemble des fichiers et dossiers WordPress (
wp-admin,wp-content,wp-includes,wp-config.php, etc.). - Activez l’option “Afficher les fichiers cachés (dotfiles)” afin d’inclure le fichier
.htaccess. - Cliquez sur “Compresser” (ou “Créer une archive”) et choisissez le format
.zip. - Téléchargez ensuite cette archive sur votre ordinateur.
- Sur le nouvel hébergement, chargez l’archive via le gestionnaire de fichiers, puis utilisez l’option “Extraire” pour décompresser le contenu.
Cette méthode est rapide, fiable et évite les erreurs ou oublis fréquents lors des transferts FTP.
Si votre hébergement ne propose pas de gestionnaire de fichiers
Certains hébergeurs d’entrée de gamme (comme OVH Perso) ne permettent pas de compresser ni de décompresser les fichiers côté serveur. Dans ce cas, il faut transférer les fichiers via FTP ou SFTP à l’aide d’un logiciel comme FileZilla, Cyberduck ou WinSCP.
- Connectez-vous à votre compte FTP/SFTP à l’aide des identifiants fournis par votre hébergeur.
- Accédez au dossier racine du site (souvent
/wwwou/public_html). - Téléchargez l’intégralité des dossiers et fichiers WordPress sur votre ordinateur.N’oubliez pas d’activer l’affichage des fichiers cachés (dotfiles) pour inclure
.htaccess. - Connectez-vous ensuite au nouvel hébergement et transférez tous les fichiers dans le dossier racine correspondant.
Cette méthode peut être plus longue, mais elle reste parfaitement fonctionnelle et universelle.
Pour les sites volumineux, transférez les fichiers par lots (wp-content,wp-includes, etc.) afin d’éviter les coupures de session FTP.
3. Vérifier et transférer le fichier .htaccess
Le fichier .htaccess est un fichier caché situé à la racine de WordPress, au même niveau que wp-config.php.
Il contient les règles liées aux liens permanents, aux redirections, et à certaines mesures de sécurité ou de cache.
Avant de transférer vos fichiers :
- assurez-vous que l’affichage des fichiers cachés est activé dans votre client FTP ou votre gestionnaire de fichiers ;
- vérifiez que
.htaccessest bien inclus dans votre transfert ou votre archive.zip.
Dans FileZilla : menu Serveur → Forcer l’affichage des fichiers cachés.
Si, pour une raison ou une autre, le fichier .htaccess n’a pas été copié ou si le nouveau serveur utilise une configuration différente, vous pouvez le régénérer facilement depuis le tableau de bord WordPress (à condition que le serveur utilise Apache ou LiteSpeed) :
- Connectez-vous à l’administration WordPress.
- Rendez-vous dans Réglages → Permaliens.
- Sans rien modifier, cliquez simplement sur Enregistrer les modifications.
Cette action oblige WordPress à recréer automatiquement un nouveau fichier .htaccess conforme à la configuration du serveur.
Si vous aviez ajouté des règles personnalisées (redirections, sécurité, cache, HTTPS, etc.), pensez à les recopier manuellement dans le nouveau fichier .htaccess.
Exemple standard d’un fichier .htaccess WordPress :
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Cas particulier : migration vers un serveur Nginx
Si votre nouvel hébergement utilise Nginx au lieu d’Apache (ou LiteSpeed), le fichier .htaccess n’est pas pris en charge, car Nginx n’interprète pas ce type de fichier.
Dans ce cas :
- WordPress ne pourra pas régénérer automatiquement de fichier
.htaccessdepuis le menu Réglages → Permaliens; - Les règles de réécriture (permalinks, redirections, HTTPS forcé, cache, etc.) doivent être définies directement dans la configuration du serveur Nginx, souvent dans un fichier du type
/etc/nginx/sites-available/nomdusite.conf.
La plupart des hébergeurs mutualisés basés sur Nginx appliquent déjà ces réglages par défaut.
Si vous gérez votre propre serveur ou VPS, voici l’équivalent minimal d’un .htaccess WordPress standard en syntaxe Nginx :
location / {
try_files $uri $uri/ /index.php?$args;
}
Si votre ancien hébergement était sous Apache et que le nouveau utilise Nginx :
- vous pouvez ignorer le fichier
.htaccess, il ne sera pas lu ; - vérifiez simplement que la configuration Nginx contient bien la directive
try_filesci-dessus ; - et si vous aviez des redirections ou règles de sécurité dans votre ancien
.htaccess, il faudra les convertir manuellement en syntaxe Nginx.
4. Exporter et importer la base de données
Identifier la base utilisée
Ouvrez le fichier wp-config.php et repérez :
DB_NAME
DB_USER
DB_PASSWORD
Notez ces informations, elles vous serviront pour la réimportation.
Export de la base
- Ouvrez phpMyAdmin sur l’hébergement source.
- Sélectionnez la base, cliquez sur Exporter, laissez les options par défaut, puis validez.
- Un fichier
.sqlest généré : conservez-le précieusement.
Import sur la destination
- Créez une nouvelle base de données MySQL.
- Créez un utilisateur MySQL et attribuez-lui tous les droits sur cette base.
- Importez le fichier
.sqldans la base via phpMyAdmin → onglet Importer.
5. Reconfigurer WordPress
Modifiez le fichier wp-config.php du nouveau site pour y renseigner les nouveaux identifiants :
DB_NAME
DB_USER
DB_PASSWORD
Enregistrez les modifications, puis testez l’accès au site (par IP ou sous-domaine temporaire si possible).
6. Reconfigurer le nom de domaine
Si vous restez chez le même hébergeur :
- Supprimez le domaine de l’hébergement source (Domaines configurés).
- Attendez 10 à 15 minutes, le temps que la suppression soit bien effective (la suppression des zones DNS peut prendre quelques minutes).
- Ajoutez le domaine sur le nouvel hébergement, en le liant au bon dossier racine.
Si vous changez aussi d’hébergeur :
- Mettez à jour les enregistrements DNS / MX / A du domaine vers la nouvelle IP.
- Régénérez le certificat SSL via Let’s Encrypt après propagation.
Pendant quelques heures, le domaine peut encore pointer vers l’ancien serveur, c’est normal.
Vérifications finales
- Comparez la version PHP entre les deux hébergements et ajustez si nécessaire.
- Réactivez vos plugins de cache et de sécurité.
- Vérifiez que les liens internes et les médias fonctionnent. Si le domaine a changé, effectuez une recherche/remplacement dans la base.
Résumé rapide (checklist)
- Désactiver le cache et le firewall avant transfert
- Sauvegarder e-mails et base de données
- Compresser et transférer les fichiers WordPress
- Créer une nouvelle base MySQL et importer le fichier
.sql - Modifier le fichier
wp-config.php - Reconfigurer le domaine et le certificat SSL
- Tester le site et réactiver les plugins
Exemple pratique : transfert des e-mails chez o2switch
Pour conserver les e-mails :
- Connectez-vous en FTP.
- Téléchargez le dossier
/mail/nom-du-domaine.frdu compte source. - Transférez-le à la même place sur le nouveau compte.
- Régénérez les comptes via cPanel si nécessaire.
Chez OVH, la méthode directe n’est pas possible : il faut passer par IMAP ou un client mail (voir guide OVH).
Conclusion
La migration manuelle d’un site WordPress peut sembler technique, mais elle garantit un contrôle total sur vos fichiers, vos e-mails et vos DNS. Prenez le temps de suivre chaque étape calmement, et faites une sauvegarde complète avant toute manipulation.
Chez o2switch, tout est simplifié grâce au cPanel. Chez OVH, la méthode IMAP est incontournable pour les e-mails. Dans tous les cas, la rigueur et la patience restent vos meilleures alliées.






