Sélectionner une page

Comment déplacer un site WordPress d’un hébergement vers un autre ?

WordPress

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.


É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.fr par 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).

  1. Connectez-vous à votre panneau d’hébergement et ouvrez le gestionnaire de fichiers.
  2. Accédez au dossier racine de votre site (souvent /www ou /public_html).
  3. Sélectionnez l’ensemble des fichiers et dossiers WordPress (wp-adminwp-contentwp-includeswp-config.php, etc.).
  4. Activez l’option “Afficher les fichiers cachés (dotfiles)” afin d’inclure le fichier .htaccess.
  5. Cliquez sur “Compresser” (ou “Créer une archive”) et choisissez le format .zip.
  6. Téléchargez ensuite cette archive sur votre ordinateur.
  7. 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 FileZillaCyberduck ou WinSCP.

  1. Connectez-vous à votre compte FTP/SFTP à l’aide des identifiants fournis par votre hébergeur.
  2. Accédez au dossier racine du site (souvent /www ou /public_html).
  3. 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.
  4. 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-contentwp-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 .htaccess est 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) :

  1. Connectez-vous à l’administration WordPress.
  2. Rendez-vous dans Réglages → Permaliens.
  3. 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 .htaccess depuis 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_files ci-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

  1. Ouvrez phpMyAdmin sur l’hébergement source.
  2. Sélectionnez la base, cliquez sur Exporter, laissez les options par défaut, puis validez.
  3. Un fichier .sql est généré : conservez-le précieusement.

Import sur la destination

  1. Créez une nouvelle base de données MySQL.
  2. Créez un utilisateur MySQL et attribuez-lui tous les droits sur cette base.
  3. Importez le fichier .sql dans 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 :

  1. Supprimez le domaine de l’hébergement source (Domaines configurés).
  2. Attendez 10 à 15 minutes, le temps que la suppression soit bien effective (la suppression des zones DNS peut prendre quelques minutes).
  3. 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 :

  1. Connectez-vous en FTP.
  2. Téléchargez le dossier /mail/nom-du-domaine.fr du compte source.
  3. Transférez-le à la même place sur le nouveau compte.
  4. 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.

Vous avez des questions à propos de cet article ? Besoin d'aide sur un autre sujet ? Contactez-moi, je pratique des prix vraiment compétitifs et je réponds généralement rapidement