Comment déplacer Wordpress sur un nouveau nom de domaine ?

Procédure

Pour déplacer un site WordPress sur un nouveau nom de domaine, vous copiez ses fichiers et sa base de données sur l'hébergement du nouveau domaine, vous adaptez le fichier wp-config.php, puis vous remplacez l'ancienne adresse par la nouvelle dans les réglages de WordPress. Si votre site est sur un hébergement LWS Panel, le WP Manager fait tout cela pour vous, sans FTP ni phpMyAdmin.

La méthode manuelle ci-dessous sert dans les autres cas : site hébergé ailleurs que chez LWS, nouveau domaine sur un autre type d'hébergement, ou site que le WP Manager ne gère pas. Les exemples d'écrans sont ceux du LWS Panel.

Pourquoi changer le nom de domaine d'un site WordPress demande des précautions

WordPress enregistre l'adresse du site dans sa base de données. Si vous copiez le site sans la changer, il continue d'envoyer les visiteurs vers l'ancienne adresse. Les liens que vous avez écrits dans vos articles et vos pages gardent aussi l'ancien domaine : une fois l'ancien site supprimé, ils mènent à des erreurs 404.

Sauvegarder le site avant toute modification

Le déplacement modifie la base de données, et une requête SQL exécutée ne s'annule pas. Avant de commencer, gardez sur votre ordinateur une copie complète du site, en deux parties :

Ces deux copies vous servent aussi pour la suite : ce sont elles que vous envoyez sur le nouvel hébergement. Conservez-les sans les modifier jusqu'à ce que le nouveau site fonctionne.

Copier le site sur l'hébergement du nouveau domaine

  1. Envoyez les fichiers par FTP

    Vos identifiants FTP sont dans le LWS Panel du nouvel hébergement, rubrique Fichiers > Compte(s) FTP, bloc Listing des utilisateurs FTP. Le mot de passe n'y est pas affiché : s'il est perdu, cliquez sur Changer sur la ligne du compte. La connexion avec FileZilla est expliquée dans Comment publier un site par FTP avec FileZilla, Cyberduck ou WinSCP ?.

    Envoyez tous les fichiers sauvegardés dans le dossier du nouveau domaine, à l'intérieur de /htdocs :

    • pour un sous-domaine, son dossier porte son nom complet, par exemple /htdocs/blog.nouveau-domaine.fr/ ;
    • pour un domaine ajouté en « Domaine indépendant », c'est le dossier indiqué dans la colonne Répertoire de la rubrique Gestion du domaine > Multi Domaines ;
    • pour le domaine principal, c'est le dossier qui porte son nom s'il existe (/htdocs/nouveau-domaine.fr/), sinon /htdocs directement.

    Le Gestionnaire de fichiers du LWS Panel (rubrique Fichiers) vous permet de voir ces dossiers avant l'envoi.

  2. Créez une base de données sur le nouvel hébergement

    Dans le LWS Panel, rubrique Base de données & PHP, ouvrez MySql & PhpMyadmin et cliquez sur Cliquez ici pour créer une base MySql. Le nom de la base, l'utilisateur et le mot de passe sont générés par LWS : le mot de passe vous est envoyé par e-mail et n'est plus affiché ensuite dans le panel. Voir Comment créer une base de données Mysql ?.

  3. Importez la base de données dans phpMyAdmin

    Sur la ligne de la nouvelle base, cliquez sur le menu ⋮ puis sur PhpMyAdmin. phpMyAdmin s'ouvre dans un nouvel onglet : la connexion n'est pas automatique, saisissez l'utilisateur de la base (colonne Utilisateur) et son mot de passe. Importez ensuite le fichier exporté de l'ancienne base, comme expliqué dans Comment importer une base de données sur un hébergement mutualisé LWS avec phpMyAdmin. Pour un fichier volumineux, suivez Comment importer une base de données volumineuse sur LWS Panel ?.

  4. Indiquez la nouvelle base dans wp-config.php

    Le fichier wp-config.php, à la racine du site copié, contient les paramètres de connexion à la base. Faites-en d'abord une copie (par exemple wp-config.php.avant) : si le site ne s'affiche plus, vous remettez cette copie en place. Modifiez ensuite les quatre lignes suivantes avec les valeurs du tableau de MySql & PhpMyadmin :

    define( 'DB_NAME', 'nom_de_la_base' );
    define( 'DB_USER', 'utilisateur_de_la_base' );
    define( 'DB_PASSWORD', 'mot_de_passe_de_la_base' );
    define( 'DB_HOST', 'adresse_ip_du_serveur_mysql' );
    Ligne de wp-config.phpOù lire la valeur dans le LWS Panel
    DB_NAMEColonne Base
    DB_USERColonne Utilisateur
    DB_PASSWORDLe mot de passe reçu par e-mail à la création de la base (perdu : menu ⋮ > Changer mot de passe)
    DB_HOSTColonne Ip serveur : une adresse IP, pas « localhost »

    Notez aussi la valeur de la ligne qui commence par $table_prefix (par défaut 'wp_') : c'est le début du nom des tables de votre site, utile à l'étape suivante.

Remplacer l'ancienne adresse par la nouvelle

Les modifications ci-dessous sont celles que documente WordPress dans son guide officiel, partie « Changing The Site URL » (Moving WordPress, sur developer.wordpress.org). Faites-les dans la base du nouveau site, après l'import, et gardez votre sauvegarde à portée de main.

  1. Changez l'adresse du site dans la table des options

    Dans phpMyAdmin, cliquez sur le nom de la base dans la colonne de gauche, puis sur la table wp_options (remplacez wp_ par votre préfixe s'il est différent). Sur la ligne dont la colonne option_name vaut siteurl, modifiez la colonne option_value : saisissez la nouvelle adresse complète, avec https:// et sans barre oblique à la fin, par exemple https://nouveau-domaine.fr. Validez avec Exécuter. Faites de même pour la ligne home.

  2. Corrigez les liens écrits dans vos articles et vos pages

    Vos contenus peuvent contenir des liens et des images avec l'ancienne adresse. La requête ci-dessous est un modèle à adapter : remplacez les deux adresses par les vôtres, écrites exactement comme sur le site (avec https:// ou http://, avec ou sans www), et wp_posts par le nom de la table avec votre préfixe. Dans phpMyAdmin, ouvrez l'onglet SQL de la base, collez la requête adaptée, puis cliquez sur Exécuter.

    UPDATE wp_posts SET post_content = REPLACE(post_content, 'https://www.ancien-domaine.fr', 'https://www.nouveau-domaine.fr');

Vérifier que tout fonctionne

Ouvrez la nouvelle adresse dans votre navigateur et parcourez quelques pages : le texte, les images et les menus s'affichent, et l'adresse en haut du navigateur reste la nouvelle. Connectez-vous ensuite à l'administration, à l'adresse https://nouveau-domaine.fr/wp-admin : dans Réglages > Général, les deux champs d'adresse (celle de WordPress et celle du site) doivent afficher la nouvelle adresse.

Pour envoyer les visiteurs de l'ancien domaine vers le nouveau, mettez en place une redirection : Rediriger un nom de domaine vers une autre adresse web.

Questions fréquentes

Mon nouveau site affiche « Erreur lors de la connexion à la base de données »

Comparez les quatre lignes de wp-config.php avec la ligne de la base dans MySql & PhpMyadmin : nom de la base, utilisateur et adresse IP du serveur. Si vous doutez du mot de passe, changez-le par le menu ⋮ > Changer mot de passe, puis reportez-le dans wp-config.php.

Le nouveau domaine me renvoie vers l'ancien site

Les lignes siteurl et home de la table des options contiennent encore l'ancienne adresse. Vérifiez-les dans phpMyAdmin, dans la base du nouveau site, et vérifiez aussi que wp-config.php pointe bien vers cette nouvelle base et non vers l'ancienne.

Existe-t-il une méthode sans phpMyAdmin ?

Oui. Sur un hébergement LWS Panel, le WP Manager déplace le site sans FTP ni requête (voir l'encadré en haut de cette aide). Depuis un autre hébergeur, une extension de migration fait le transfert : consultez Comment migrer un site WordPress avec l'extension All-in-One WP Migration.

Articles associés

Notez cet article :

5/5 | 1 avis

Cet article vous a été utile ?

Article utileOui

Article non utileNon

MerciMerci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

Articles similaires

2mn de lecture

Comment créer un site web Wordpress ?

2mn de lecture

Comment réinitialiser son mot de passe Wordpress ?

5mn de lecture

Erreur lors de la connexion à la base de donnée sur Wordpress

2mn de lecture

Nos formules Wordpress


Questions sur cet article

Poser une question à l'équipe LWS et à sa communauté

RGPD : Responsable : LWS-Ligne Web Services. Finalité : modération et publication publique de votre question, notification éventuelle d'une réponse. Base légale : consentement (art. 6.1.a RGPD). Conservation des emails : 90 jours après notification, 12 mois maximum sans réponse. Pour exercer vos droits, consultez la section RGPD de nos CGV.