Administrer son site


Duplication d’un site WordPress

Comment déplacer manuellement son site

Décrit comment dupliquer ou déplacer sur un autre ordinateur un site WordPress sans utiliser de plugin, suivi d’une petite présentation de l’extension Duplicator qui permet de réaliser ce travail automatiquement.

Il y plusieurs raisons pour lesquelles on peut souhaiter déplacer un site, que ce soit pour disposer d’une sauvegarde, changer de serveur ou effectuer des tests sur une copie avant de les réaliser sur le site de production.


 Introduction

On peut trouver plusieurs extensions (plugin) sur Internet pour nous aider à dupliquer un site WordPress d’un serveur vers un autre mais il peut être utile avant tout, de savoir qu’elles sont les opérations à effectuer pour réaliser cette duplication. En fin d’article, nous présenterons aussi le plugin Duplicator qui nous permettra de réaliser l’opération de manière complète et automatique.

 Procédure générale

Un site basé sur WordPress est composé d’un certain nombre d’éléments qui sont :

  • une série de fichiers qui se trouvent dans l’arborescence du site : ces fichiers correspondent principalement au programme WordPress mais aussi, à des extensions (plugins) et thèmes que l’on peut avoir téléchargés ainsi que des fichiers média comme des photos ou vidéos.
  • des données contenue dans une base de données : ces données correspondent principalement aux contenus (textes) des articles, pages, mots clés, catégories etc… qui ont été saisis par les rédacteurs plus certaines informations techniques (rédacteurs…) utiles au fonctionnement du site.

Il faudra donc :

  • dupliquer la base de données depuis l’ancien serveur sur le nouveau,
  • effectuer une copie de l’ensemble des fichiers contenus dans l’arborescence du site,
  • modifier certains paramètres comme ceux de connexions à la nouvelle base de donnée et le changement de nom de domaine ainsi que certains chemins ou liens se trouvant dans les articles.

Dans l’exemple suivant nous prendrons comme exemple, le rapatriement d’un site se trouvant chez un hébergeur vers un poste local avec une architecture LAMP. Les autres cas d’un poste local vers le serveur d’un hébergeur ou entre deux serveurs étant similaire dans leurs principes.

Détaillons maintenant les action à effectuer.

 Duplication de la base de données

Réaliser une sauvegarde de la base

Pour récupérer la base de données, vous devrez vous connecter sur le site de votre hébergeur. Là, il devrait vous fournir une interface d’administration au SGBD   utilisé qui est souvent phpMyAdmin, interface Web pour MySQL.

Vous devrez saisir votre login et mot de passe de connexion. Si vous avez défini plusieurs base de données, sélectionnez celle concernant votre base puis, sélectionnez l’onglet "exporter"

Création de la nouvelle base et importation des données

Il faut maintenant créer une nouvelle base de données vierge sur votre poste local. Soit vous utilisez une interface graphique comme PhpMyAdmin soit, vous utiliser un terminal en ligne de commande.

Nous allons maintenant décrire la procédure en ligne de commande, celle à partir d’une interface graphique pouvant varier d’un programme à l’autre.

Remarque : Lorsque l’on peut accéder directement au serveur, l’utilisation de la ligne de commande a l’avantage de ne pas changer et l’on peut également se trouver en milieu professionnel sur des postes ne disposant pas d’applications graphiques.

Dans un terminal, lançons l’utilitaire mysql avec la commande :

Après saisie du mot de passe, créons une nouvelle base de données :

Remarque Nous pouvons donner le même nom que la base d’origine ou un autre. Dans ce dernier cas, il faudra simplement le prendre en compte lors de la phase de paramétrage.

On pourrait en profiter pour exécuter le script d’importation mais nous réaliseront cette action à partir du shell LINUX en une seule ligne de commande. Cette méthode sera plus rapide si vous désirez simplement réimporter les données dans une base existante.

Dans un terminal, déplacez-vous dans le répertoire qui contient le fichier .sql  

Exécutons le script généré lors de la sauvegarde de la base de données :

 Duplication de l’arborescence du site

Récupération de l’ensemble des fichiers du site

On va maintenant récupérer tous les fichiers se trouvant à la racine du site ainsi que tous ces sous-répertoires.

Pour cela, une solution est d’utiliser un programme comme FileZilla ou équivalent. Certains hébergeurs peuvent fournir également une interface. Dans tous les cas, vous devrez renseigner le nom de l’hôte, l’identifiant et mot de passe de connexion FTP.

Remarque : Pour éviter des problèmes de droits d’écriture dans des répertoires du site destination, on peut procéder en 2 temps. D’abord récupérer les fichiers dans un répertoire temporaire puis les recopier dans la racine du site local après s’être assurer que l’on a les droits sur ce dernier.

Normalement, l’interface se présente comme un gestionnaire de fichier. Dans le cas de Mozilla, vous sélectionnez d’un côté, le répertoire destination de la sauvegarde et de l’autre la racine du site. Sélectionnez la totalité des fichiers. Il suffit de faire un glisser-déplacer à la souris pour effectuer la copie de l’ensemble des fichiers. Les fichiers étant nombreux, cette procédure pourra prendre quelques minutes.

Création de la nouvelle arborescence

La première chose à faire va être de créer un répertoire à la racine du serveur Apache local.

Remarque :Par défaut, un utilisateur lambda n’a pas les droits suffisant pour écrire dans cette arborescence sur un système de type UNIX. Donc, soit vous travaillez en mode administrateur soit, vous modifiez les droits temporairement sur le répertoire que vous venez de créer, le temps de faire l’installation.

Première chose, créer le répertoire du futur site à la racine du site web local.

Sous Ubuntu, cela donne par exemple, les commandes suivantes.

On se positionne à la racine du site,

On créé le répertoire d’accueil du site,

Nous mettons temporairement les droits d’écriture à tous les utilisateurs pour pouvoir recopier le site et modifier les fichiers de configuration sans avoir besoin d’être en mode administrateur.

A partir de votre gestionnaire de fichier vous allez pouvoir copier le contenu du répertoire temporaire dans le nouveau dossier.

Vous avez maintenant un site totalement dupliqué puisque vous disposez d’une base de données locale contenant les articles et une copie de l’ensemble des fichiers et répertoires dans l’arborescence de votre site web local. Il reste encore à adapter certains paramètres au nouveau contexte. C’est ce que nous allons voir maintenant.

 Paramétrage du nouveau site

Mise à jour des paramètres de connexion à la base de données

WordPress pour pouvoir accéder à la base de données, à besoin de connaitre le nom de la base ainsi que le nom et mot de passe de connexion qui peuvent être différents entre le serveur et le poste local.

Ces informations se trouvent dans le fichier wp-config.php se trouvant à la racine du site. Les paramétrages qui nous intéressent sont les suivants :

Il suffit de les adapter aux caractéristiques de la base de données créée sur le poste local. Pour DB_HOST, nous pouvons mettre localhost puisque dans notre exemple, nous sommes sur une seule machine locale.

Mise à jour des liens contenus dans les articles de la base de données

Il y a de grandes chances que des articles fassent référence à des liens sur des éléments situés sur le site comme des photos ou autres. Il faut donc les modifier pour qu’ils pointent bien sur le bon lien.

Pour cela, nous allons devoir exécuter une requête SQL   sur la table d’enregistrement des articles.

Il faut également modifier l’adresse du site dans la table des options :

Il ne nous reste plus qu’à modifier le propriétaire des répertoires qui doit être le même que le serveur Apache. Ce qui donne dans mon cas :

Modifier l’adresse du site dans l’interface

Il se trouve que le nom du site se trouve à d’autres endroits dans la base de données. Si vous désirez afficher votre site dans un navigateur à partir de la nouvelle adresse locale. Vous pourrez avoir un message de ce type :

Il faudra donc aller dans l’interface d’administration du site pour mettre à jour l’url   du site. En fait, il faut s’assurer qu’à aucun endroit, il ne reste des liens sur le site d’origine.

 Derniers paramétrages

Il va maintenant falloir mettre les droits des fichiers à jour. On voit par exemple que le fichier wp-config.php contient des paramètres de connexion et mots de passe en clair. Le minimum est que ce fichier ne soit ni lisible ni modifiable par un utilisateur quelconque. Même sur une machine locale de test, modifiez au moins les droits d’accès à ce fichier.

Si vous avez des erreur 404 sur vos liens, c’est peut-être que votre système de permaliens n’est pas fonctionnel sur le poste local. Une solution est de modifier son paramétrage (le plus rapide étant de sélectionner Simple dans l’interface.

 Quelques mots sur l’extension Duplicator

Comme nous l’avons dit en début de cet article, il existe plusieurs extensions pour WordPress pour dupliquer un site. Personnellement, j’utilise depuis quelques temps, une extension nommée Duplicator.

Il suffit installer cette extension sur le site à dupliquer. Il permet en quelques cliques, de générer deux fichiers. Le premier, est un fichier .zip qui contient toutes les données (site et bases de données) et le second est un script PHP d’installation. Une fois les 2 fichiers copiés à la racine du nouveau site, on exécute le script PHP. Ce dernier affichera un formulaire pour entrer les nouveaux paramètres de configuration puis, réalisera l’installation automatiquement.

 Conclusion

Nous venons de voir dans les grandes lignes comment dupliquer un site WordPress. Si il est bon de connaître cette procédure, on voit qu’i y a plusieurs actions à réaliser. Comme décrit dans le paragraphe précédent, l’extension Duplicator peut être un bon choix pour effectue ce travail automatiquement.


Article n° 148

Crée par: chris

Créé le: 7 décembre 2019

Modifié le: 7 décembre 2019

Nombre de visites: 3

Popularité: 4 %

Popularité absolue: 1

Mots clés de cet article


SPIP

2003-2020 LePpf
Plan du site | | Contact | RSS 2.0

Visiteurs connectés : 7

Nombre moyen de visites quotidiennes sur le site: 251