GNU/Linux >> Tutoriels Linux >  >> Linux

Comment migrer WordPress manuellement vers un nouvel hôte

Toute migration de site Web est considérée comme l'une des opérations les plus difficiles. Heureusement, WordPress fournit une pléthore de plugins de sauvegarde pour aider et automatiser l'ensemble du processus de sauvegarde et de migration. Cependant, WordPress est construit de telle manière que la migration manuelle de WordPress ne pourrait pas être plus simple.

Dans ce tutoriel, je vais vous montrer comment migrer un site WordPress manuellement vers un nouvel hôte ou serveur. Ceci est particulièrement utile si le site est hébergé sur un serveur avec des ressources insuffisantes pour activer le plugin de sauvegarde. Les plugins de sauvegarde nécessitent généralement une quantité minimale de ressources pour exécuter la sauvegarde et la migration du site vers un autre serveur. J'ai préparé une liste de plugins de sauvegarde pour WordPress. Donc, si votre serveur est sain et dispose de suffisamment de ressources, je vous recommande d'installer un plug-in de sauvegarde pour la migration WordPress.

Commençons le processus.

Prérequis –

Temps de lecture estimé :8 minutes

  • Accès SSH aux deux serveurs

Sauvegarder WordPress

Chaque site WordPress est composé de trois composants principaux :les fichiers principaux de WordPress, les fichiers utilisateur (c'est-à-dire le wp-content répertoire) et la base de données WordPress. À moins que la version de WordPress ne soit modifiée, les fichiers principaux ne changent pas. wp-content et la base de données, d'autre part, changent quotidiennement, voire toutes les heures, en fonction du trafic du site Web. Si vous créez régulièrement du nouveau contenu, de nouvelles images, vidéos et textes sont téléchargés chaque jour, ce qui augmente le nombre de fichiers sur le serveur et la taille de la base de données.

La première étape consiste à compresser wp-content afin de réduire sa taille et de la transférer rapidement vers le nouveau serveur. Deuxièmement, exportez la base de données WordPress, compressez-la avec les fichiers utilisateur et préparez-la pour la migration.

wp-contenu

wp-content est un sous-répertoire du répertoire WordPress. Il stocke toutes les données que l'utilisateur a téléchargées, telles que les thèmes, les plugins, les pièces jointes, les photos, les vidéos, etc. À moins que l'administrateur du site ne configure le CMS pour le faire, la plupart des sites WordPress ne téléchargent pas le contenu utilisateur dans un autre répertoire. Si vous utilisez un thème fortement personnalisé, effectuez une sauvegarde des répertoires contenant des données pertinentes pour la structure de votre site Web personnalisé.

De nombreux plugins de sauvegarde enregistrent les fichiers de sauvegarde ailleurs que dans wp-content . Ainsi, si vous souhaitez migrer les fichiers de sauvegarde stockés vers le nouveau serveur, incluez-les également dans l'archive; sinon, téléchargez-les et enregistrez-les dans un endroit sûr. L'ajout de fichiers de sauvegarde stockés peut augmenter considérablement la taille de la sauvegarde complète, veuillez donc les télécharger localement si possible.

.htaccess

Le .htaccess Le fichier est un fichier de configuration qui permet aux utilisateurs de configurer des paramètres distincts pour chaque répertoire. WordPress héberge plusieurs .htaccess fichiers dont le principal est situé à la racine de WordPress.

Sauvegardez le .htaccess car il contient des paramètres de configuration utiles définis par les plugins installés tels que les plugins de pare-feu et de cache.

wp-config.php

wp-config.php est un fichier de configuration WordPress qui contient les informations les plus critiques pour que WordPress fonctionne. Le wp-config.php Le fichier fournit des informations de connexion à la base de données. Le wp-config.php peut également écraser les limites PHP établies par le serveur, entre autres. Si vous migrez votre site vers un nouvel hébergeur, assurez-vous de copier wp-config.php avec les autres fichiers sur le nouveau serveur.

Base de données WordPress

Lors de la création d'un nouveau site ou du transfert d'un ancien, assurez-vous que la base de données est correctement configurée avec le site. Comme indiqué précédemment, le wp-config.php Le fichier contient des informations sur la base de données telles que le nom de la base de données, l'utilisateur de la base de données (avec un accès complet à la base de données) et le mot de passe de l'utilisateur.

Pour migrer efficacement WordPress, nous devons exporter l'intégralité de la base de données de l'ancien serveur et la préparer pour le transfert vers le nouvel hébergeur.

Migration manuelle de WordPress vers un nouvel hôte

Pour les besoins de cette démonstration, je suppose que notre ancienne IP de serveur hôte est 192.168.29.5 et notre nouvelle IP de serveur hôte est 192.168.57.8 .

Tout d'abord, connectons-nous en ssh à notre ancien serveur -

ssh [email protected]

Si le port ssh de votre serveur est autre que 22, utilisez -p suivi du numéro de port.

ssh -p port_number [email protected]

Exporter la base de données

La première étape consiste à exporter la base de données. Si votre site Web reçoit un volume de trafic élevé, vous pouvez soit le mettre en maintenance, soit rediriger les visiteurs vers le serveur de sauvegarde. WordPress écrit constamment des données dans la base de données, et les sites Web plus importants peuvent subir des ralentissements pendant le processus d'exportation de la base de données.

Une fois prêt, utilisez la commande suivante pour vider toute la base de données localement –

mkdir $HOME/site-backup
cd $HOME/site-backup
mysqldump -u root -p wordpress_database > wp_database.sql
Modifier wordpress_database avec le nom de la base de données WordPress.

Appuyez sur Entrée et entrez le mot de passe root MySQL. Maintenant, asseyez-vous et détendez-vous. Selon la taille de la base de données, ce processus peut prendre un certain temps. Ne pas appuyer sur + C pendant le processus.

Une fois le processus terminé, vous aurez wp_database.sql fichier dans le répertoire de travail, c'est-à-dire site-backup.

Sauvegarder wp-content, wp-config.php et .htaccess

Il est maintenant temps de sauvegarder les fichiers utilisateur. Comme indiqué précédemment, je suppose que votre WordPress utilise des thèmes WordPress standard plutôt que des thèmes hautement personnalisés ou personnalisés. Si vous utilisez des thèmes personnalisés, veuillez inclure les répertoires pertinents dans la commande suivante.

Entrez dans le répertoire racine de WordPress et exécutez la commande suivante –

$ tar -czf website-content.tar.gz /path-to-wordpress/wp-content/ path-to-wordpress/wp-config.php path-to-wordpress/.htaccess

Maintenant, asseyez-vous et détendez-vous. Découvrez à quel point il est facile de migrer un site Web. Vous pouvez vous détendre deux fois !

Une fois les fichiers compressés, déplacez le fichier compressé dans le site-backup mentionné ci-dessus répertoire.

mv website-content.tar.gz $HOME/site-backup/

Nous avons la base de données compressée du site, les données utilisateur WordPress et les personnalisations dans notre $HOME/site-backup/ annuaire. Compressez maintenant l'intégralité du répertoire de sauvegarde du site afin qu'il puisse être facilement transféré vers le nouveau serveur.

tar -zcvf site-backup.tar.gz $HOME/site-backup/

Vous avez maintenant une sauvegarde complète de votre site WordPress. Vous pouvez soit télécharger cette sauvegarde localement et la déplacer vers le nouveau serveur, soit utiliser rsync pour le transférer directement sur le nouveau serveur.

Téléchargeons cette sauvegarde directement sur le nouveau serveur.

SSH dans le nouveau serveur –

ssh [email protected]192.168.57.8

Utilisez rsync pour télécharger le fichier de sauvegarde –

rsync [email protected]192.168.29.5:/home/site-backup.tar.gz .

Le point à la fin de la commande ci-dessus est le répertoire de destination, c'est-à-dire le répertoire de travail actuel.

Entrez le mot de passe root et attendez la fin du téléchargement.

Installer WordPress sur un nouvel hôte

Maintenant que nous avons nos données de sauvegarde sur le nouveau serveur, nous pouvons configurer un nouveau site WordPress et importer toutes nos données sur ce site.

Créer une base de données pour le nouveau site

Connectez-vous à la ligne de commande mysql et utilisez les commandes suivantes pour créer une nouvelle base de données, un nouvel utilisateur et accorder au nouvel utilisateur tous les privilèges sur la base de données WordPress.

sudo mysql

Créer une nouvelle base de données

create database wordpress;

Créer un nouvel utilisateur de base de données

create user 'username'@'localhost' identified by 'password';
Remplacez le nom d'utilisateur et le mot de passe par vos valeurs préférées.

Accorder l'accès à la base de données à un nouvel utilisateur

grant all privileges on wordpress.* to 'username'@'localhost';
flush privileges;

Importer la base de données

Maintenant que notre base de données est créée, nous pouvons exporter la base de données téléchargée.

Décompressez ou décompressez le fichier de sauvegarde –

tar -xvf /home/site-backup.tar.gz

Il exportera deux autres fichiers, wp_database.sql et website-content.tar.gz .

Importez la base de données dans wordpress avec la commande suivante –

mysql -u root -p wordpress < /home/site-backup/wp_database.sql

Entrez le mot de passe root et détendez-vous. Encore une fois.

Installer WordPress

Je suppose que vous utilisez le serveur Web Apache. Ainsi, la racine Web par défaut pour le serveur Apache est /var/www/html . cd dans le répertoire racine et supprimez index.html.

$ cd /var/www/html
$ rm index.html
Télécharger WordPress
wget -O /tmp/wordpress.tar.gz https://wordpress.org/latest.tar.gz
sudo tar -xvf /tmp/wordpress.tar.gz -C /tmp/
sudo mv /tmp/wordpress/* /var/www/html

Importer la sauvegarde WordPress vers un nouveau site

tar -xvf /home/site-backup/website-content.tar.gz

La commande ci-dessus décompressera le wp-content du site , wp-config.php , et .htaccess . Nous pouvons utiliser rsync pour déplacer wp-content/ à la nouvelle installation de WordPress.

$ rsync -avu /home/site-backup/wp-content/ /var/www/html/wp-content/
$ cp /home/site-backup/wp-config.php /home/site-backup/.htaccess /var/www/html/

Modifier wp-config.php

Et l'une de nos dernières étapes consiste à connecter notre site à la base de données nouvellement créée. N'oubliez pas que nous avons déjà importé la base de données de notre site, elle est donc prête. Il n'est pas nécessaire d'exécuter l'installation de WordPress.

$ nano /var/www/html/wp-config.php

Remplacez maintenant l'ancien nom de la base de données, le nom d'utilisateur de la base de données et le mot de passe par la base de données du serveur actuel que nous avons créée ci-dessus, c'est-à-dire wordpress.

Corriger les autorisations de fichiers WordPress

N'oubliez jamais de définir les autorisations de fichiers correctes. Sans cela, WordPress peut ne pas fonctionner correctement et vous pouvez exposer vos données si des autorisations incorrectes sont définies.

$ chown -R www-data:www-data /var/www/html/
$ find /var/www/html/ -type d -exec chmod 755 {} \;
$ find /var/www/html/ -type f -exec chmod 650 {} \;

Modifier 'siteurl' et 'home' dans la base de données

Si vous déplacez votre site sans modifier le nom de domaine, vous pouvez ignorer cette étape. Si vous modifiez le nom de domaine, assurez-vous de mettre à jour la base de données avec le nouveau nom de domaine.

Nous devons mettre à jour les colonnes de la table wp_options. Si vous avez phpMyAdmin, alors vous pouvez ouvrir phpMyAdmin> wordpress> wp_options> siteurl .

Modifier la colonne "siteurl ‘ valeur à ‘https://www.newdomain.com’. Changez également la colonne "accueil ‘ valeur à ‘https://www.nouveaudomaine.com’.

Mettre à jour siteurl et maison en utilisant la ligne de commande mysql –

sudo mysql
use wordpress;
update wp_options set option_value='https://www.newdomain.com' where option_name='siteurl'
update wp_options set option_value='https://www.newdomain.com' where option_name='home'

Enfin, faites pointer votre nom de domaine vers le nouveau serveur. Si votre serveur Web est correctement configuré, vous devriez voir votre ancien site Web sur le nouvel hôte.

Derniers mots

La procédure manuelle semble être assez compliquée, mais croyez-moi quand je dis qu'une fois que vous vous y serez habitué, cela vous fera économiser de l'argent sur un plugin de sauvegarde premium. En suivant les étapes décrites ci-dessus, nous pouvons même créer un script et configurer une tâche cron pour sauvegarder automatiquement notre site Web. Tout cela sans l'utilisation d'un plugin.

Enfin, si vous rencontrez des difficultés ou des erreurs en suivant ce message, veuillez nous en informer dans la section des commentaires ci-dessous. Vous pouvez également rejoindre notre serveur Discord pour des réponses plus rapides.

Lecture recommandée
Correction de l'erreur WordPress « Erreur lors de l'établissement de la connexion à la base de données »
Migration du blog WordPress vers un nouvel hébergement - Méthodes simples
Hébergement du site Web sur notre propre serveur
Correction de l'erreur WordPress Aucun fichier d'entrée spécifié
Plugins WordPress
Linux
  1. Migrer vers un nouvel hôte WordPress en 5 étapes sans temps d'arrêt

  2. Comment installer ou migrer WordPress avec EasyEngine Setup

  3. Comment migrer votre site Web à l'aide de cPanel

  4. Comment migrer un serveur DNS BIND vers un nouveau matériel ?

  5. Comment puis-je utiliser DD pour migrer des données d'un ancien disque vers un nouveau disque ?

Comment migrer CentOS 8 vers le flux CentOS

Comment installer WordPress sur Ubuntu 18.04

Comment installer WordPress Ubuntu 20.04

Comment sauvegarder et restaurer un site Web WordPress

Comment sauvegarder un hôte Unix local à l'aide de l'utilitaire rsnapshot rsync

Comment sauvegarder un hôte Linux distant à l'aide de l'utilitaire rsnapshot rsync