créer un blog wordpress

Comment déplacer un site WordPress en toute sécurité sans aucun downtime

Article mis à jour le 18 avril 2017

À noter : Si vous souhaitez accéder à l’ancienne version de cet article, nous avons laissé celle-ci à la fin de cette nouvelle version.

Vous souhaitez effectuer la migration d’un site WordPress vers un nouvel hébergeur? Le plus gros risque encouru lors du transfert pour un site WordPress est la perte de données ou un laps de temps que votre site pourrait être hors ligne. Dans ce guide, nous vous montrons étapes par étapes comment effectuer une migration d’un site WordPress vers un nouveau serveur sans le moindre risque.

transfert d'un site WordPress

Note importante: avant de débuter notre tutoriel, nous vous rappelons que même si les compagnies d’hébergement WordPress ne mettent pas ce service en avant-plan sur leur site web, la grande majorité de celles-ci offre le service de migration gratuitement.

1. Choisir votre nouvel hébergeur WordPress

Si vous utilisez actuellement un serveur web et que vous n’êtes pas satisfait de la rapidité du produit ou du service de la compagnie, il est bien temps de changer d’entreprise! Choisissez votre nouveau serveur avec grands soins. Vous ne souhaitez pas refaire cette étape de transfert de site plusieurs fois. Il faut choisir intelligemment!

Voici nos recommandations :

  • Si vous cherchez un hébergement mutualisé d’une très grande qualité et fiabilité, nous vous recommandons BlueHost. Ceux-ci sont aussi endossés par WordPress.org, qui un « statement » de professionnalisme en soi! Nous utilisons aussi BlueHost sur la plusieurs des sites de nos clients.
  • Si vous cherchez un serveur WordPress 100% géré (au niveau des mises à jour WordPress, extensions, backups, etc.), nous vous recommandons WPEngine. Il s’agit de la compagnie de gestion de sites WordPress la plus fiable sur le marché. Par contre, ce service est loin d’être donné, mais parfois, il vaut mieux payer plus cher pour la tranquillité d’esprit!

Après avoir choisi et acheté votre nouvel hébergement, n’installez pas WordPress sur celui-ci. Nous procéderons d’une autre façon pour transférer votre site.

2. Installer l’extension Duplicator pour débuter la migration

La première étape à faire est d’installer le plugin gratuit Duplicator sur le site web que vous voulez migrer.

duplicator

Duplicator est une extension gratuite qui a fait ses preuves depuis quelques années. Nous utilisons toujours celle-ci lorsque nous avons besoin de transférer un  site WordPress.

Une fois que vous aurez installé et activé Duplicator, dans la barre latérale de gauche de votre panneau WordPress, cliquez sur « Duplicator -> Paquets (ou Packages) ».

Ensuite, cliquez sur « Créer un paquet (Create New)» dans le coin supérieur droit.

duplicator créer un paquet

Après, cliquez sur le bouton « Suivant (Next) » et suivez les instructions pour créer votre paquet.

duplicator étape 2

Assurez-vous que les crochets verts sont tous présents. Il se peut qu’une de ces cases concernant la taille totale de votre site et/ou la case fichiers volumineux soit en rouges. Personnellement, dans cette situation, nous continuons la création du paquet. Cliquez sur le bouton bleu « Création (Build) » en bas à droite. Il se peut que cette étape prenne quelques minutes.

duplicator étape 3

Une fois le processus complété, vous devez cliquer sur le bouton « Installeur (Installer) » et « Archive » pour télécharger votre paquet.

duplicator étape 4

Le fichier .zip d’archive est une copie de votre site. Le fichier installer.php effectuera automatiquement l’installation du site.

3. Importer votre site WordPress vers votre nouvel hébergement

Maintenant que vous avez téléchargé votre paquet, la prochaine étape est d’ajouter celui-ci sur votre nouveau serveur.

Vous pouvez effectuer cette étape en utilisant un logiciel FTP comme FileZilla.

Une fois le logiciel installé et ouvert, entrez-y vos informations de connexion de votre nouvel hébergement qui vous ont été transmises dans un courriel suite à votre enregistrement avec ce nouvel hébergeur.

Vous devriez avoir reçu dans ce courriel :

  • l’adresse IP du serveur (à ajouter dans la case Hôte)
  • un nom d’utilisateur ou username (à ajouter dans la case Identifiant)
  • un mot de passe ou password (à ajouter dans la case Password)
  • il se peut que vous ayez aussi reçu un numéro de port (à ajouter dans la case Port)

Cliquez sur le bouton « Connexion Rapide ».

filezilla

À noter : lorsque vous utilisez le logiciel FTP, assurez-vous d’utiliser l’adresse IP du serveur dans la case Hôte plutôt que l’adresse de votre site web puisque votre adresse www pointe encore vers votre ancien serveur.

Lorsque vous êtes connecté à votre serveur par FTP, ajoutez-y (upload) votre fichier installer.php et votre fichier d’archive .zip à la racine du serveur. Celui-ci est souvent situé dans le répertoire :  /username/public_html/ ou /username/public_html/exemple.com où example.com est en fait votre nom de domaine.

Assurez-vous que le répertoire racine (public_html ou public_html/exemple.com) soit vide. Celui-ci ne devrait contenir aucun fichier autre que les deux que vous venez tout juste d’ajouter. S’il n’est pas vide, supprimez les fichiers qui y sont présents.

4. Modifier le fichier hosts pour ne pas avoir de downtime

*** À noter que cette étape n’est pas obligatoire, mais très utile pour éviter un downtime pour votre site (site hors ligne). L’étape est un peu complexe à effectuer pour un débutant. Si jamais vous n’y arrivez pas, vous pouvez passer directement à l’étape 6 et ensuite revenir à l’étape 5 pour effectuer votre installation. ***

Une fois vos fichiers ajoutés sur votre nouveau serveur, vous devez accéder à votre fichier installer.php via un navigateur web.

Ce fichier est présent via l’URL :

http://www.exemple.com/installer.php

Cependant, le problème est que votre nom de domaine (www.exemple.com) pointe toujours vers votre ancien hébergeur, donc vous arriverez à une page d’erreur 404.

Normalement, les gens vous diront de changer tout de suite les adresses DNS (nameservers) dans votre registraire de nom de domaine et de faire pointer celles-ci vers votre nouveau serveur. Le problème avec cette manoeuvre est que lorsque les nameservers seront propagés, les utilisateurs verront votre site non fonctionnel puisqu’il n’aura pas encore été installé.

Nous vous montrons donc comment accéder à votre nouveau site web temporairement depuis votre ordinateur, sans affecter votre ancien site.

Cette étape s’effectue en changeant le fichier hosts (hosts file) sur votre ordinateur.

Le fichier hosts relie des noms de domaine vers des adresses IP. Nous vous montrons donc comment ajouter une entrée pour un nom de domaine dans le hosts file pour que votre adresse web pointe vers votre nouveau serveur seulement pour votre ordinateur.

Effectuer ce changement fera en sorte que vous pourrez accéder au fichier installer.php en utilisant votre nom de domaine. Le reste des gens (qui ne sont pas sur votre ordinateur) pourront continuer à naviguer sur votre ancien hébergement sans problème. Cette étape est présente pour s’assurer que votre site ne tombe jamais hors ligne durant le transfert!

La première chose à faire est de trouver l’adresse IP de votre nouvel hébergement. Vous avez probablement utilisé celle-ci pour vous connecter par FTP tout à l’heure. Elle devrait donc se trouver dans le courriel d’information fourni par votre nouvel hébergeur suite à votre enregistrement. Si vous ne l’avez pas reçu, vous pouvez trouver celle-ci en vous connectant à votre cPanel ou panneau d’accès (accès également fournis dans le courriel de bienvenue du nouvel hébergement). Lorsque vous serez connecté au cPanel, cliquez sur le lien d’ouverture du menu concernant les statistiques du serveur dans la bande de gauche (voir la capture d’écran ci-dessous). Vous devriez y trouver votre adresse IP.

adresse ip partagée

Pour les utilisateurs Windows (PC) :

Sur votre ordinateur, allez dans « Programs » All Programs » Accessories (Programmes » Tous les programmes » Accessoires) », cliquez avec le bouton droit de votre souris sur le Notepad et sélectionnez « Run as Administrator ».  Une fenêtre apparaîtra ensuite et vous devez cliquer sur « Yes » pour lancer le Notepad avec les privilèges d’administrateur. Dans le Notepad, allez à « File » Open (Fichier » Ouvrir) et allez ensuite à C:\Windows\System32\drivers\etc. Sélectionnez hosts file et ouvrez-le.

Pour les utilisateurs de Mac :

Vous devrez ouvrir votre application Terminal. Entrez ensuite cette ligne de commande pour modifier le fichier hosts :

sudo nano /private/etc/hosts

Pour les utilisateurs de Windows et de Mac :

Au bas de votre fichier hosts, entrez l’adresse IP de votre nouveau serveur et votre nom de domaine comme ceci :

192.168.1.22 www.exemple.com

Bien sûr, remplacez 192.168.1.22 par votre adresse IP et modifiez aussi www.exemple.com par votre nom de domaine. Sauvegardez les changements et vous pouvez maintenant accéder à votre nom de domaine sur votre nouveau serveur dans votre navigateur web.

Important: N’oubliez pas de supprimer les changements que vous venez tout juste de faire dans votre fichier hosts lorsque l’étape 5 de ce tutoriel sera complétée.

5. Débuter le processus de migration de Duplicator

Nous sommes maintenant prêts à débuter votre installation! Allez à l’adresse où est situé votre fichier installer.php :

http://www.exemple.com/installer.php

Si vous n’avez pas créé une nouvelle base de données sur votre nouveau serveur, voici comment faire :

1 – Connectez-vous à votre cPanel

2 – Trouvez le lien MySQL Databases

ajouter base de données

3 – Créez-y une nouvelle base de données et prenez le nom en note

nouvelle base de données

4 – Créez aussi un nouvel utilisateur et prenez en note le nom de celui-ci ainsi que le mot de passe

ajouter utilisateur base de données

5 – Ajoutez l’utilisateur à votre base de données

ajouter utilisateur base de données

Une fois que votre base de données est créée, vous devez entrer vos informations (nom de la base de données, nom d’utilisateur et mot de passe pour celle-ci) dans les champs appropriés à l’écran du processus de Duplicator. Cliquez ensuite sur le bouton « Test Connection » afin de valider les informations.

installation avec duplicator

Si l’installateur ne réussit pas à se connecter à votre base de données, validez que vous avez bel et bien les informations valides de connexion.

Une fois que vous êtes connecté à votre base de données, lisez la notice d’avertissements « Warnings & Notices », cochez la case et cliquez sur le bouton « Run Deployment ».

installateur déploiement

L’installateur importera maintenant votre base de données. Cette étape peut prendre quelques minutes.

Dans l’étape 2 de l’installateur, celui-ci vous demandera votre ancienne URL et votre nouvelle. Modifiez celle-ci seulement si elle est différente qu’auparavant.

Cliquez ensuite sur « Run Update » pour mettre à jour vos URLs.

À l’étape finale, vous pouvez compléter le processus et vérifier que tout fonctionne parfaitement en cliquant sur les boutons ci-dessous dans l’ordre.

duplicator-test

Important: Vous pouvez désormais enlever les changements que vous avez effectués dans le fichier hosts à l’étape 4.

6. Mettre à jour de votre nom de domaine

Jusqu’ici, vous avez recréé et déménagé entièrement votre site Internet sur votre nouveau serveur d’hébergement. Mais il reste encore une dernière étape finale. Celle de faire pointer votre nom de domaine vers votre nouvel hébergement.

Afin d’effectuer cette mise à jour, vous devez changer vos nameservers DNS dans votre registraire. C’est de cette façon que votre adresse www sera reliée à votre nouveau serveur.

Si vous avez enregistré votre nom de domaine avec un registraire tel que GoDaddy, Namecheap, ou autre, vous devez mettre à jour vos nameservers.

Vous aurez besoin des nouvelles adresses de nameservers de votre nouvel hébergement. Ces adresses ressemblent habituellement à ceci :

ns1.hostname.com
ns2.hostname.com

Voici comment changer les nameservers DNS chez GoDaddy. Si vous ne savez pas comment effectuer cette modification chez votre registraire, vous pouvez toujours demander à celui-ci de le faire pour vous ou du moins, vous indiquer comment faire. Sinon, une simple requête dans Google telle que : « GoDaddy how to change DNS » ou « Namecheap how to change DNS » devrait vous fournir la réponse.

Connectez-vous à votre compte GoDaddy. Trouvez dans votre accès client le nom de domaine que vous voulez modifier. Cliquez sur votre adresse www pour y effectuer des changements. Cliquez ensuite sur « Manage DNS » à droite.

 

À l’écran concernant les nameservers, choisissez « Custom » dans le menu déroulant. Ajoutez ensuite vos nouvelles adresses de nameservers.

Sauvegardez vos changements.

Voilà! C’est fait, vous avez modifié vos nameservers. Les changements de DNS peuvent prendre de 4 à 48h avant d’être pleinement propagés (avant que votre nom de domaine ne pointe vers votre nouveau serveur).

Étant donné que vous avez le même contenu sur votre nouveau serveur que sur votre ancien, vous ne devriez pas voir de différence lorsque le changement sera complété.

Pour être 100% en sécurité, nous vous conseillons d’attendre environ 7 jours avant d’annuler votre ancien service d’hébergement.

En espérant que cet article vous a été utile dans vos démarches!

Article inspiré par le guide de WPBeginner sur la migration d’un site WordPress.

Le déplacement d’un site WordPress peut sembler une tâche difficile et pour certain, cette étape est catégorisée dans « pas touche! ». Dans le Codex WordPress, l’information sur le sujet offre un guide détaillé, mais semble un peu désorganisée et complexe à suivre. Si un changement d’hébergement WordPress actuel s’impose et que vous souhaitez passer à un autre nouveau, ou que vous souhaitez simplement déplacer votre site à la racine de votre domaine, ce guide est pour vous! Suivez-le étape par étape. Nous allons couvrir deux scénarios se produisant le plus souvent:

  • Déplacement d’un site Web d’un sous-répertoire vers la racine du domaine.
  • Déplacement d’un site en provenance d’un certain hébergeur vers un autre.

Le transfert d’un site WordPress d’un sous-répertoire vers la racine

C’est une méthode simple qui vous permettra de garder votre installation WordPress actuellement dans un sous-répertoire (ex : www.nomdedomaine.com/votresitewordpress/ et d’utilisez l’URL de votre domaine racine (ex : www.nomdedomaine.com).

1. Effectuez la sauvegarde de votre site

La sauvegarde est de mise pour ce genre de manipulation, une tranquillité d’esprit en cas de problème. Cela inclut les fichiers de votre thème WordPress, les plugins, médias (donc, tout votre répertoire WordPress) ainsi que de votre base de données (effectuez une exportation de celle-ci dans phpMyAdmin, sous l’onglet «Export»).
Vous pouvez utiliser n’importe quel outil de sauvegarde avec lequel vous vous sentez le plus à l’aise. Vous pouvez choisir de copier vos fichiers sur votre ordinateur manuellement à l’aide de FTP ou SFTP avec FileZilla. Assurez-vous d’avoir copié les fichiers cachés tels que votre fichier .htaccess situé à la racine du répertoire WordPress.

2. Déplacez vos fichiers

S’il y a un site existant à la racine du FTP, vous allez devoir le supprimer. Si vous souhaitez conserver une copie,vous pouvez également faire une sauvegarde du dit site. Via votre FTP, déplacez tous les fichiers de votre répertoire WordPress à la racine du site (image ci-dessous).

répertoire site web
3. Modifiez votre fichier .htaccess

Votre fichier .htaccess est situé à la racine de vos fichiers WordPress. Celui-ci devrait avoir l’air de ça :

# BEGIN WordPress

RewriteEngine On
RewriteBase /nom-de-lancien-repertoire/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /nom-de-lancien-repertoire/index.php [L]

# END WordPress

Modifiez-le pour ceci :

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

En enlever le sous-répertoire dans ces deux lignes de code du .htaccess, nous indiquons que le site est désormais situé à la racine du FTP.

4. Modifiez votre fichier SQL de base de données

Voici la dernière étape du transfert. Ici, vous devez avoir exporté préalablement votre base de données SQL via phpMyAdmin (dans phpMyAdmin, cliquez sur votre base de données, et allez dans l’onglet Export. Vous pouvez exporter celle-ci en fichier .sql ou .zip, comme vous voulez).

Supprimez votre base de données en ligne (ayez un backup!).

Ouvrez votre fichier SQL dans un logiciel d’édition de texte. Personnellement, je choisis TextEdit, car un logiciel comme Coda ou SublimeText ajoute de la couleur aux balises de code, ce qui rend le fichier ardu à modifier étant donné la lourdeur du fichier.

Effectuez un « find & replace » (chercher & remplacer? lol). Cherchez dans votre SQL une ligne de code telle que :

http://www.votrenomdedomaine.com/votre-repertoire

* Important, dans mon find & replace, je ne met pas de « / » à la fin du nom de mon répertoire.

Remplacez cette ligne par :

http://www.votrenomdedomaine.com

Vous devriez avoir au minimum 60 changements. Pour des sites ayant beaucoup de données et d’information, vous pourriez avoir au-dessus de 2 000 résultats.

Réimportez ensuite votre base de données.

Voilà! Votre site devrait être désormais navigable à la racine de votre nom de domaine.

En conclusion

Si jamais vous aviez une erreur PHP, assurez-vous de bien avoir modifié votre fichier .htaccess et d’avoir modifié correctement votre base de données.
Si vous devez effectuer un changement de serveur, vous devez sensiblement effectuer les mêmes étapes si vous devez modifier le répertoire du site web. L’étape de plus à faire serait de modifier votre fichier wp-config.php afin d’y modifier les informations de connexion à votre nouvelle base de données.

Bonne chance!

Commentaires

  1. JRB | 19 avril 2017 Répondre

    Le fond de l’article est intéressant mais que dire de la forme sinon qu’elle aurait besoin d’un relecteur-correcteur !
    Quel charabia, ça pique les yeux.

    • Louis-Philippe Dea | 19 avril 2017 Répondre

      Bonjour JRB,
      Vous parlez au niveau de fautes d’orthographe? En relisant l’article, j’en ai corrigé quelques-unes mineures, mais pas tant que ça. Pouvez-vous m’indiquer certaines qui vous « piquaient les yeux » ?