Pourquoi changer de serveur un site sous WordPress ?
Plusieurs raisons peuvent pousser un admin ou un développeur à vouloir changer de serveur son site WordPress (ou celui de son client), parmi elles il y a :
- Un passage de l’environnement de développement (ou de tests) à l’environnement de production
- La création d’une préproduction (si vous n’utilisez pas le super outils WP Tiger inclus dans l’hébergement o2switch !
- Le changement d’offre chez son hébergeur (passage d’un mutualisé à un serveur dédié par exemple)
Première étape : Exporter la base de données du serveur de départ
Dans un premier temps, dirigez vous vers la section PHPMyAdmin de votre serveur de départ. C’est l’outil qui va vous permettre d’obtenir la base de données.

- Cliquez sur la base de données (à gauche) que vous souhaitez exporter (Étape 1)
- Cliquer sur l’onglet (en haut) nommé « Exporter » (Étape 2)
- Sélectionnez le format d’export de type « SQL » (Étape 3)
- Valider en cliquant sur le bouton « Exécuter », ce qui entraînera la sortie d’un fichier au format SQL (Étape 4)
Une fois le fichier téléchargé, modifiez le avec un éditeur de texte et faites un remplacement du nom de votre serveur de départ par le nom de votre serveur d’arrivée (exemple : vous faites une recherche de « localhost » et vous le remplacez par le serveur distant pour le passage d’un serveur de développement au serveur de production).
N’oubliez pas d’enregistrer le fichier modifié et de le mettre de côté.
Deuxième étape : Importer la base de données sur le serveur de destination
Rendez-vous ensuite sur la section PHPMyAdmin de votre serveur de destination.
- Créez la base de données avec le nom que vous souhaitez (exemple : wp_monsite) et notez ce nom pour plus tard (veillez à noter également l’utilisateur et le mot de passe correspondant pour se connecter à la base de données).
- Cliquez ensuite sur l’onglet « Importer » et donnez lui le fichier que vous avez généré et modifié lors de la première étape de ce tutoriel.
Troisième étape : Copie des fichiers
Récupération des fichiers
Utilisez un outil tel que FileZilla pour vous connecter en FTP à votre serveur de départ. Une fois connecté, récupérer le dossier entier de votre WordPress (il doit se trouver dans le dossier www/ de votre serveur, ou sur un dossier spécifique que vous avez renseigné) vers un dossier en local sur votre ordinateur (exemple : Téléchargements / monsupersite).
Envoi des fichiers
Avec FileZilla toujours, connectez vous ensuite à votre serveur de destination. Une fois connecté, dirigez vous vers le dossier d’arrivée du WordPress (dossier www, ou public_html par exemple) et envoyez le contenu de votre dossier créé en local (monsupersite dans l’exemple).
Quatrième étape : Vérification des fichiers
Le fichier wp_config.php
A la racine du dossier contenant le WordPress, il doit se trouver un fichier nommé « wp_config.php ». Il faut éditer ce fichier pour y rentrer les identifiants de connexion à votre base de données (récupérer les informations de la première étape) :
/** Nom de la base de données de WordPress. */
define('DB_NAME', 'BaseDeDonneeWordPress');
/** Utilisateur de la base de données MySQL. */
define('DB_USER', 'UtilisateurBaseDeDonnees');
/** Mot de passe de la base de données MySQL. */
define('DB_PASSWORD', 'MotDePasseBaseDeDonnees');
/** Adresse de l'hébergement MySQL. */
define('DB_HOST', 'ServeurBaseDeDonnees');
En règle générale, la variable « DB_HOST » est renseignée par la valeur « localhost ».
Le fichier .htaccess
Dernière étape du tutoriel : la vérification que tout est OK dans le fichier de configuration du serveur nommé « .htaccess ». Il se trouve à la racine du dossier principal, au même endroit que le fichier « wp_config.php ». Pendant le transfert, il peut se produire des bugs de redirection, il faut donc surveiller la ligne suivante :
RewriteRule . /dossier/index.php [L]
et la remplacer par la ligne suivante :
RewriteRule . /index.php [L]
Cette action va permettre de ne pas prendre en compte un quelconque dossier présent sur le serveur de départ et absent sur le serveur de destination !
