Vous êtes ici : Accueil | Tutoriels WordPress | Comment déplacer un site WordPress manuellement (et sans risques)

Comment déplacer un site WordPress manuellement (et sans risques)

Migrer WordPress

Pour la rédaction de Relooker son Thème, j’ai eu besoin de comparer les plugins dédiés à la migration de sites WordPress.

Par migrer, je veux dire déplacer un site à un autre endroit pour pouvoir travailler dessus sans toucher au site principal.

Ces recherches m’ont permis de peser le pour et le contre de chaque plugin et de trouver le meilleur.

Je partagerai cela prochainement avec la publication d’un comparatif détaillé sur ces plugins.

En attendant, je vous propose de découvrir comment procéder à une migration manuelle avec Aurélien, un nouveau cuistot.

Déplacer un site WordPress à la main est un peu plus complexe qu’avec un plugin mais il est toujours intéressant de comprendre comment les choses fonctionnent.

J’espère que ce nouveau tutoriel vous sera utile. Aurélien, c’est à toi 🙂

La mise en production d’un site est une étape inhérente à chaque projet web.

Si elle fait partie de la routine de l’habitué de WordPress, elle peut devenir un casse-tête si on s’y prend mal.

Voici une recette pour éviter toute aigreur d’estomac lors de la migration de votre site WordPress.

Disons-le tout de suite, ce tutoriel n’est pas seulement utile pour le passage d’un site en production. Il s’applique à la procédure de migration en général.

En bref, vous pouvez y recourir dès lors que vous souhaitez :

  • changer le nom de domaine de votre site
  • déplacer un site sur un autre serveur
  • migrer un site local en ligne

Nous allons voir comment procéder étape par étape, manuellement.

Il existe des plugins qui automatisent la migration, mais avant d’en parler, il est toujours bon de faire un point sur la manière de faire artisanale, the old-fashioned way 🙂

L’enjeu de la migration

Comment migrer WordPress manuellementPour faire court, la migration consiste à déménager votre site d’un serveur à l’autre et/ou à changer son nom de domaine.

Il va donc falloir intervenir à deux niveaux :

  • les fichiers du site (FTP)
  • les contenus du site (Base de données)

Voyons comment faire en 7 étapes.

1. Sauvegarder les fichiers du site

transmit

Transmit, un client FTP pour Mac

La première chose que vous allez devoir faire, c’est sauvegarder votre site. Autrement dit, le télécharger sur votre ordinateur.

Pour cela, connectez-vous à votre serveur FTP avec le client de votre choix. Vous pouvez allez voir du côté de Filezilla ou si vous êtes dispendieux, je ne saurais que trop vous conseiller Transmit.

Une fois le programme téléchargé vous aurez à indiquer trois informations pour vous connecter : le serveur ; le nom d’utilisateur et le mot de passe.

Une fois connecté, transférer l’intégralité des fichiers sur votre poste.

Note d’Alex : Vous pouvez aussi vous baser sur une sauvegarde réalisée grâce à un plugin.

2. Exporter votre base de données

Deuxième étape, récupérer les contenus et les réglages de votre site. Ces informations sont stockées dans votre base de données.

Pour s’y connecter, vous pouvez utiliser un client web comme phpMyAdmin (généralement accessible depuis l’espace client de votre hébergeur) ou bien un programme à l’interface un peu plus convivial tel que Sequel (pour Mac uniquement).

Si vous n’avez pas sous la main les informations nécessaires pour établir la connexion, elles sont regroupées dans le fichier wp-config.php de votre site WordPress.

Ce fichier se trouve à la racine de votre site, c’est lui qui permet la liaison avec la base de données. Il faudra récupérer :

  • le nom de la base de données
  • le nom d’utilisateur
  • le mot de passe
  • et l’hôte
<?php

// ** Réglages MySQL - Votre hébergeur doit vous fournir ces informations. ** //
/** Nom de la base de données de WordPress. */
define('DB_NAME', 'votre_nom_de_bdd');

/** Utilisateur de la base de données MySQL. */
define('DB_USER', 'votre_utilisateur_de_bdd');

/** Mot de passe de la base de données MySQL. */
define('DB_PASSWORD', 'votre_mdp_de_bdd');

/** Adresse de l'hébergement MySQL. */
define('DB_HOST', 'localhost');

Une fois connecté à la base de données, il faut l’exporter. Pour cela, sous phpMyAdmin, cliquez sur Exporter et choisissez les options suivantes :

  • Méthode d’exportation : personnalisée
  • Sélectionner toutes les tables (normalement, c’est déjà le cas)
  • Cocher Diriger la sortie vers un fichier
  • Cliquez sur Exécuter en bas de page.

Cela téléchargera votre base de données en un fichier .sql.

phpmyadmin

phpMyAdmin : cliquez sur Exécuter en bas de page

3. Créer la nouvelle base de données

Maintenant que vous avez récupéré l’intégralité de votre site, il faut préparer sa mise en production.

Pour commencer, il faut créer une base de données sur votre nouveau serveur. Pour cela, il faut une nouvelle fois se connecter avec phpMyAdmin.

Bien entendu, vous utiliserez les informations de connexion du nouveau serveur.

Dans la colonne de droite vous aurez la possibilité de créer une nouvelle base :

Créer une nouvelle base de données dans PHPMyAdmin

Donnez-lui ensuite un nom (plus il sera compliqué mieux ce sera) puis cliquez sur Créer :

Donner un nom à la nouvelle base

4. Importer la base de données

Cette nouvelle base de données créée, vous allez maintenant y importer la base de données téléchargée précédemment.

Souvenez-vous, le fichier .sql. Pour cela, cliquez sur l’onglet Importer et avec l’option Parcourir allez chercher votre fichier.

Une fois votre fichier sélectionné, cliquez sur Exécuter.

Importer la base de données

5. Mettre à jour wp-config.php

Maintenant que cette nouvelle base de données est en place, ouvrez le fichier wp-config.php et mettez à jour les quatre informations vues plus haut (le nom de la base de données, le nom d’utilisateur, le mot de passe et l’hôte).

Cela va permettre d’établir la connexion entre votre site et sa nouvelle base de données.

6. Mettre en ligne les fichiers sur le nouvel FTP

Connectez-vous maintenant à votre nouveau serveur FTP et envoyez les fichiers de votre site, incluant votre fichier wp-config.php fraîchement mis à jour.

Pendant que vos fichiers se mettent en ligne, profitez du temps alloué pour lire quelques recettes de la Marmite 🙂

7. Mettre à jour les urls de votre nouveau site

Note : Cette manipulation est inutile si l’adresse de votre site ne change pas.

Faisons le point : tous vos fichiers sont maintenant présents sur votre nouveau serveur, notamment votre fichier wp-config.php qui a été mis à jour.

Vous avez créé une nouvelle base de données dans laquelle vous avez importé votre base initiale.

Mais voilà, ce n’est pas fini, vous ne pouvez pas encore accéder à votre site.

La raison est simple : l’ancienne adresse du site est encore présente dans la base de données.

Pour mettre à jour les urls du site, je vous recommande l’utilisation du script Search-Replace-DB de Interconnectit.

Pour l’utiliser, c’est simple, vous le téléchargez et vous le mettez en ligne à la racine de votre site. Vous vous rendez ensuite sur http://www.votresite.com/Search-Replace-DB-master/ (le dossier du script).

Une page apparaîtra vous permettant de remplacer facilement l’ancienne adresse par la nouvelle.

Normalement, le script va récupérer automatiquement les informations de connexion de votre base de données via le fichier wp-config.php.

search-replace

La page du script Search-Replace-DB

Veillez à mettre uniquement l’adresse des sites (sans « / » à la fin). Cela nous donne :

  • Remplace : http://www.ancienneurl.com
  • par : http://www.nouveleurl.com

Cliquez sur Dry run pour faire un essai. C’est à dire que le script ne remplacera pas les valeurs dans la base de données.

Attention : vérifiez bien les valeurs avant de procéder au remplacement des valeurs dans la base de données.

Pour lancer réellement le script, cliquez sur le bouton Live run. 

Une fois la manipulation achevée, veillez bien à supprimer le dossier du script (Search-Replace-DB-master) pour des questions de sécurité.

Il serait dommage que quelqu’un d’autre change des valeurs dans votre base (ou vous vole vos identifiants de base de données).

Notez que ce script prend en compte les données sérialisées (serialized data), la mise à jour des urls sera donc complète.

Vous pourriez avoir des problèmes si vous utilisiez une méthode de bûcheron, comme ouvrir votre fichier .sql avec votre éditeur de texte puis un chercher/remplacer directement dans le fichier.

Certaines urls étant sérialisées (cryptées, si vous préférez), elles passeraient à l’as et vous auriez donc des liens morts.

Les derniers réglages

Afin de vous assurer que tout fonctionne correctement, connectez-vous à la nouvelle adresse.

Si vous voyez des erreurs 404 ou constatez des problèmes, faîtes un tour dans Réglages > Permaliens et sauvegardez les paramètres. Cela devrait tout faire rentrer dans l’ordre.

Je vous recommande un petit test final pour s’assurer qu’il n’y a plus aucune 404, passez votre site à la moulinette avec Xenu (PC) ou Integrity (Mac).

Ces logiciels testent les réponses serveur pour chaque page du site et vous permettent de voir facilement s’il y a des liens cassés.

À vous maintenant les migrations sereines 🙂

Conclusion

Migrer son site manuellement peut être un challenge si vous n’avez pas l’habitude de procéder à ce genre de manipulation.

Cela reste tout de même un excellent moyen de comprendre comment sont liés les fichiers et la base de données de WordPress.

Comment procédez-vous pour effectuer des migrations ? Manuellement, par un plugin ou par un service tiers comme Blogvault ?

Si vous avez apprécié cet article, inscrivez-vous à la newsletter

Recevez gratuitement les prochains articles et accédez à des ressources exclusives. Plus de 10000 personnes l'ont fait, pourquoi pas vous ?

C'est parti, je m'inscris !

163 commentaires Ajoutez le vôtre

  1. Pour ma part, je pense que j’ai eu à migrer une seule fois en site de façon manuelle… Et quelle galère lorsque c’est la toute première fois !

    Lors de l’utilisation de Search Replace DB je croisais les doigts pour que tout marche bien et…. ouf ! Toutes les URLs avaient bien été modifiées. Mais je n’étais vraiment pas serein.

    Depuis, j’utilise uniquement Duplicator quand je veux migrer mes sites et c’est un vrai bonheur. Mais bon, Alex va en parler dans son comparatif prochainement !

    PS : Je suis le traducteur français de Duplicator (et je le fais bénévolement), si vous voyez des approximations dans mon travail, faites-le moi savoir !

    Répondre
    • Merci pour ton retour Nicolas 🙂 Search Replace DB est vraiment un super script !

      Rendez-vous prochainement pour le comparatif des plugins de migration de sites WordPress 😉

    • bonjour Nicolas,
      j’imagine que de l’eau a coulée depuis ce commentaire … mais je ne connaissais pas duplicator, je faisais mes déplacements à la main … jusqu’au drame du site qui ne migre pas (toujours pas compris pourquoi !) … et là … je découvre Duplicator … franchement … c’est du ‘Smart migration’ !! le top. merci pour tout ce travail.

  2. Récemment j’ai effectué un changement de serveur en suivant une méthode exactement similaire à celle-ci tout en utilisant search-replace-db pour quelques modifications qui est très pratique d’ailleurs.
    En suivant à la lettre ce tutoriel, une migration de site wordpress ne peut que bien se passer 😉

    Répondre
    • Merci pour ton retour Seb 🙂
      A bientôt !

  3. Bonjour et merci pour tous ceux qui auront besoin de cette procédure.

    Je migre mes sites entièrement à la main (même si je ne fais pas ça très régulièrement).
    Ca me permet de garder la main sur les sauvegardes à faire ou à restaurer par exemple.

    Ce qui est amusant c’est que je repousse la migration de mon plus gros site depuis plusieurs mois par manque de temps et que ton article vient de rallumer la flamme. L’occasion pour moi de tester les softs que tu cites.

    Répondre
    • Merci pour ton retour Gilles, allez au boulot ^^

  4. Bonne méthode, j’utilise exactement la même lorsque je passe mes sites de local à un serveur de preprod – ou de prod.
    Ca fonctionne toujours sans problème, bien vérifier les permalinks après, souvent un problème vient du .htaccess qui ne s’est pas copié …

    Je ne connaissais pas Integrity, je vais le tester de ce pas !

    Bastien

    Répondre
    • Merci pour ton retour Bastien 🙂

      PS : Je suis allé faire un tour sur ton site. L’agencement et le design sont top mais il est un peu long à charger au départ :/

    • Salut Bastien,

      Tu verras que Integrity va te faire gagner beaucoup de temps…
      Cet outil est utile également pour la maintenance des sites pour checker les brocken links sans avoir à installer un plugin gourmand sur le site.

  5. hoooo que j’attendais ce tuto.
    Merci beaucoup.

    Répondre
    • Maintenant il n’y a plus qu’à passer à l’action 🙂

  6. Cela tombe à pic je devais me pencher sur le problème ce week-end, j’allais employer la méthode de bucheron !
    Merci à Alex et Aurélien

    Répondre
    • De rien Béatrice 🙂

      À quoi correspond ta méthode du bûcheron ? ^^

    • « Vous pourriez avoir des problèmes si vous utilisiez une méthode de bûcheron, comme ouvrir votre fichier .sql avec votre éditeur de texte puis un chercher/remplacer directement dans le fichier. »
      c’est dans l’article Alex 🙂

    • Ah oui effectivement ^^

  7. Super tuto, bravo !
    J’ai toujours migré les sites de mes clients manuellement car j’ai l’habitude de fonctionner en mode recette / prod et je dois avouer que les softs que tu cites semblent vraiment intéressants, j’ai hâte de faire ma prochaine migration 😉

    Répondre
    • Merci Thierry 🙂
      N’hésites pas à revenir partager ton expérience ici une fois que tu les auras utilisés.

      Bien à toi
      Alex

  8. J’ai eu à faire la manip plusieurs fois pour moi ou d’autres. J’utilise « duplicator » et je n’ai jamais eu de souci. il y a possibilité de s’assurer par un « check » que tout est ok sur le nouvel emplacement (plugin très bien traduit en francais ! merci nicolas). Par contre, pour être sur de ne pas avoir de pb de droit, je crée la BD avant, mais on peut faire sans.

    Répondre
  9. C’est LE tuto que j’attendais, pour enfin « y aller » sans sueurs froides !
    Merci aux cuistots pour tous leurs bons plans ! Christine

    Répondre
    • Merci Christine 🙂

    • A vot’ service M’dame 🙂

  10. Merci à Aurélien pour cet article qui détaille la procédure manuelle de migration.
    Des articles de même nature, parfois complémentaires, ont déjà été publiés par Grégoire Noyelle. J’ai déjà utilisé ses explications sans souci en particulier pour migrer un site local vers un site hébergeur.
    Voici par exemple l’article http://www.gregoirenoyelle.com/wordpress-migrer-son-site-local-vers-le-serveur-en-ligne/ ou cet article http://www.gregoirenoyelle.com/wordpress-migrer-son-site-script-dbsr/ d’utilisation du script DBSR.
    Bien qu’il soit intéressant de connaitre le fonctionnement d’une migration, je pense comme Nicolas Richer qu’un bon plugin facilitera les choses et rendra transparent les très rares migrations.

    Répondre
    • Merci pour le complément Jacques 🙂

  11. Bonjour Aurélien & Alex,

    Tuto à la fois intéressant et bien expliqué, bravo Aurélien.
    Si je peux me permettre, je vous invite à préciser que le point 7 est réservé aux sites qui changent de nom de domaine et/ou qui passent d’un environnement local à un environnement distant, car certains néophytes peuvent être perdus, vous ne pensez pas?
    Amicalement,

    Bruno

    Répondre
    • Salut Bruno,

      Oui tu as raison. C’est vrai que si un site change passe simplement d’un serveur à un autre, la manip’ est inutile.

    • Article mis à jour Bruno 🙂
      Merci

  12. Juste peut-etre un petit oubli/risque.

    J’ai rencontré dans WP des plugins qui stockent dans la base, des noms de tables en dur (avec le prefixe du jeu de tables), en particulier pour un controle d’accès : evidemment, la migration en devient encore plus difficile si vous devez changer de préfixe pour rentrer dans la nouvelle base de données….

    Et pour en revenir au plugin signalé Search-Replace-DB : il semble interessant…
    @+

    Répondre
  13. Merci pour le tuto complet.
    Personnellement j’utilise Duplicator (plugin) pour faire les transferts de sites web d’un point A à un point B.
    Je n’ai jamais eu d’erreur ou blocages.

    Qu’en pensez-vous?

    Répondre
    • Merci pour le commentaire Alexandre 🙂
      Je suis aussi un fervent utilisateur de Duplicator. Un tutoriel sera prochainement publié pour le présenter en détail.

      Bonne continuation
      Alex

  14. Bravo pour ce tuto qui précise bien la chronologie des opérations à mener dans le cadre d’une migration manuelle d’un site WP. Pour ma part, j’essaie toujours de limiter l’installation et l’utilisation de PLUGIN et j’ai toujours utilisé la procédure MANUELLE sans problème aucun, ceci pour la migration de plusieurs sites d’un hébergeur à un autre mais sans modification du nom de domaine dont j’avais demandé le TRANSFERT.
    J’ignore si cela présente un intérêt mais avant l’exportation de la BDD, je procède toujours à une OPTIMISATION de celle ci.
    Merci pour cette Marmite au contenu toujours appétissant…
    Luc.

    Répondre
    • Bonjour Luc,

      Merci pour votre message 🙂
      Optimiser sa base de données permet d’en réduire la taille donc c’est toujours bon à prendre.

      Bonne continuation
      Alex

  15. Voici une méthode très simple et claire… et puis Search-Replace-DB-master facilite vraiment la vie.
    Merci Alex !

    Répondre
    • Il n’y a pas de quoi Bernard 🙂

  16. Bonjour,
    Merci pour les tutos mais j’ai besoin de conseil !
    Je souhaite migrer un site qui a été réalisé par un prestataire INTERRENET.FR et qui l’a hébergé sur un »serveur ». Aujourd’hui, l’entreprise interrenet est en liquidation judiciaire. Le site internet risque t-il d’être fermé sans information au préalable ? Cette éventualité nous a amené à travailler sur la migration de son site et j’avoue que les tutos de la marmite sont très bien faits. Toutefois, je ne suis pas webmaster et j’ai des manques. En effet, je n’arrive pas à trouver le fichier wp-config.php sur le site word press. Et surtout je ne sais pas aller à la racine du site. Auriez vous des éclairages à m’apporter ? Je vous remercie de l’attention que vous porterez à ma sollicitation.
    Jenny Bouchinet

    Répondre
    • Bonjour Jenny,

      La racine du site correspond à l’endroit où se situent les dossiers wp-content, wp-admin et wp-includes. wp-config.php devrait se trouver à cet endroit (la racine donc).

      Bonne continuation
      Alex

    • Bonjour Jenny,

      si vous avez toujours des difficultés à migrer votre site WordPress n’hésitez pas à nous solliciter, notre agence est dans le département voisin 🙂

  17. Avant je faisais comme ça maintenant j’utilise un script en Ruby qui se nomme WordMove, il faut le lancer à la ligne de commande.
    Il fait tout automatiquement que ça soit du pull ou du push, fichiers et base de données, récupération ou envoi des fichiers récemment modifiés. Plus d’infos directement sur le repos GitHub.
    https://github.com/welaika/wordmove

    Répondre
    • Merci pour l’info Ludovic 🙂

    • Si tu veux je pourrai te rédiger un billet sur la façon de l’utiliser…

  18. Merci beaucoup!! j’ai parcouru des dizaines des tutos et c’est le seul qui a marché pour moi ! merci encore, super boulot 🙂

    Répondre
    • Ravi de voir que la Marmite a pu t’aider 🙂

  19. Bon tuto que je vais référencer.
    Quelques petits compléments: je préfère WinSCP à Filezilla – que je n’ai jamais vraiment apprécié. Et on pourrait rajouter « remonter d’un répertoire une installation WP ». Beaucoup de personnes installent au début WP dans un sous répertoire de leur domaine et ne se rendent pas compte que remonter leur installation correspond à un déménagement complet.

    Répondre
    • Merci pour tes compléments Li-an 🙂

  20. Des manips chaudes à réaliser, mais avec un bon tuto comme celui ci, normalement aucun soucis !)

    Répondre
  21. Bonjour et merci pour cet article;

    J’ai déjà utilisé cette méthode manuelle + search-replace-db qui marche très bien. Sinon, j’utilise aussi All-in-One WP Migration qui est pas mal.

    A vrai dire je suis plus en confiance avec une migration manuelle qu’avec un plugin qui fait tout (même si il marchait très bien il y a 2 mois, qui me dit que la nouvelle version n’a pas un bug ?).

    PAR CONTRE, j’ai des interrogations sur le .htaccess : faut il le copier tel quel ? faut il le regénérer ? (sachant que des plugins de sécurisation, iThemes Security dans mon cas, voire de SEO, peuvent utiliser ce .htaccess)

    Par exemple iThemes Security permet de « changer » le path de l’admin de WP et je me retrouve parfois avec une copie du site où je ne peux plus accéder à l’admin ni par wp-admin ni par le nouveau chemin ! (peut-être une erreur de manip de ma part à un moment ou un autre).

    Bref, des conseils pour le .htaccess ?

    Répondre
    • Bonjour Christophe,

      Pour le .htaccess, il faut l’adapter à la nouvelle adresse du nouveau site et reparamétrer tes plugins en fonction. Apres, s’il s’agit d’un site de développement il n’y peut-être pas forcément besoin d’activer ces plugins.

      Après, un article sur le .htaccess pourrait être sympa à l’avenir 😉

  22. Bonsoir,

    Tout d’abord merci pour ce superbe tuto 🙂
    Par contre je rencontre un souci sur le site migré, tous les accents présents dans le texte n’ont pas été pris en compte ! Une idée ? :/

    Bonne soirée à tous 🙂

    Répondre
    • Bonjour Antoine,

      Il s’agit probablement d’un problème d’encodage au niveau de ta base de données.

    • Effectivement ce problème venait de la valeur d’encodage dans le fichier wp-config problème résolu 🙂

  23. Bonjour,

    Pour ma part, on vient de refondre le site de notre boîte en :
    – laissant le site actuel tourner
    – préparant le nouveau site avec un /wordpress.

    Donc dans mon ftp j’ai un répertoire à la racine appelé wordpress, qui contient tout mon site. Je voudrais maintenant tout mettre à la racine et « virer » l’ancien. Par exemple, en créant un dossier « ancien site » dans mon répertoire et remonter le site wordpress à la racine (bref, inverser !!). Dois je suivre les mêmes étapes ? Je ne change pas de serveur, tout a été fait sur la même base de données, …

    merci par avance ! J’ai déjà quand même sauvegardé le site en local et ma base de données

    Bien à tous,
    Emilie

    Répondre
    • Bonjour Emilie,
      Tu as deux solutions :

      1. Rediriger ton domaine vers /wordpress
      2. Mettre tous tes fichiers à la racine et actualiser les urls avec le script interconnectit

      Bon courage 🙂

  24. Bonjour,

    Merci pour ce tutorial plus que clair ! J’aurais aimé le trouver avant de galérer autant avec les guides fournis par les hébergeurs. Ayant eu des problèmes avec les DNS, je dois attendre 24h à 48h pour que tout soit rétabli. Pensez-vous que c’est pour cela que WordPress ne reconnaît pas ma base de données et me propose d’installer WordPress alors que je l’ai déjà ? Merci d’avance pour votre aide.

    Répondre
    • Bonjour Laura,

      À mon sens, votre problème vient du fait que vos identifiants pour vous connecter à votre base de données ne sont pas bons (où alors il s’agit d’une erreur au niveau de la constante DB_HOST).

      Bonne continuation
      Alex

  25. Bonjour, merci pour le tuto, mais je ne comprends pas pourquoi ça ne marche pas. à l’étape 7, lorsque je veux me connecter à Search Replace DB master, j’ai un message d’erreur les X remplacent mes données. C’est mon premier site, je ne suis pas un connaisseur, si quelqu’un peut me donner un coup de main… Merci.

    Et longue vie à WPMarmite!

    Répondre
    • Salut Leonard,

      Si ça ne passe pas, ça doit être un soucis de droit d’accès ou d’identifiants.
      À mon avis, ça va être difficile de d’aider davantage :/

  26. Je suis perdu, mais merci. Adieu la marmite.

    Répondre
  27. pourquoi passer par phpmyadmin pour exporter la base de donnée alors que wordpress dispose d’ un outil d’ impôt/export pour ce faire?
    Il crée un fichier xml qu’ il suffit de réimporter via l’ admin du nouveau site.

    Répondre
    • Bonjour Eric,
      L’outil d’import de WordPress n’a jamais fonctionné correctement pour moi. De plus, l’export ne comprend que le contenu et non les options/paramètres d’un site. En passant par PHPMyAdmin, on est certain d’avoir tout le site.

  28. je n’ ai jamais eu à déménager un site, mais il m’ arrive régulièrement de remettre à zéro mon environnement de développement et une fois cela fait, j’ importe le contenu de mon site de photographe. Et retrouve donc un clone de ce que j’ ai en ligne.
    Maintenant, comme il s’ agit d’ un thème perso, j’ ai peu, si pas d’ options enregistrées. Je n’ ai donc jamais constaté le problème.

    Répondre
  29. Bonjour Alex,

    J’utilise BlogVault grâce à ton article présentant cette solution en ligne.
    Depuis 2 mois, je teste ce service et je ne peux plus m’en passer.
    Le point fort : la migration en moins de 5 minutes et sans failles !
    Je l’ai déjà expérimenté 4 fois ce mois-ci.

    Pour rentabiliser les offres payantes de BlogVault et pour apporter un vrai SAV, j’ai décidé depuis décembre, de proposer des forfaits de suivi et de maintenance.
    L’offre mensuelle à 9$ (8,50€) pour un site est raisonnable si on compte le gain de temps et la planification automatique des interventions.

    Répondre
    • Merci de ton retour Steve !
      Ravi que BlogVault te plaise 😉

  30. Bonjour,

    J’ai utilisé votre méthode pour déplacer mon site qui se trouvait dans /wordpress pour le mettre à la racine du site.
    Cela a bien fonctionné.
    Maintenant, je voudrais faire l’opération inverse, le remettre dans le /wordpress et cela ne fonctionne pas.
    Je suis bloquée à l’étape 7. Après avoir déplacé tout mon site dans /wordpress, je mets le dossier Search-Replace-DB-master à la racine (directement dans le www) et en tapant l’adresse de mon site/Search… j’obtiens l’erreur suivante :
    Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or ‘}’ in /home/museboos/www/Search-Replace-DB-master/index.php on line 123

    Je ne comprends pas ce que j’ai loupé. Pourriez-vous me venir en aide?

    En vous remerciant d’avance

    Répondre
    • Bonjour Christelle,
      Peut-être manque-t-il des fichiers au script. Supprimez le dossier et téléchargez à nouveau Search Replace DB puis renvoyez-le sur votre serveur.

      Bonne continuation
      Alex

  31. Search DB Master & Integrity made my day, thanks dude !!!

    Répondre
    • Il n’y a pas de quoi 🙂

  32. Enfin ! ENFIN le tuto que j’attendais pour m’expliquer comment migrer proprement mon site en local et pouvoir le bidouiller sans casser la version en ligne…
    Un grand MERCI !

    Répondre
    • Ravi d’avoir pu t’aider Béatrice 🙂

  33. Bonjour,
    Franchement il n’y pas plus complet sur le sujet, BRAVO Alex!
    J’ai pu faire ma migration alors que cela fait quelques jours que je cherche un outils qui me permettra de le faire, mais soit il y a des restrictions sur les versions gratuites soit l’outil ne supporte pas la taille de mes articles.
    Merci pour ce tuto.

    Répondre
    • Avec plaisir Jarmoud 🙂

  34. Bonjour,
    Je trouve le tuto formidable. Je suis vraiment nulle et grace à vous j’ai réussi à transférer mon site sur un autre serveur et j’ai même changé l’adresse du site.
    Par contre il me reste un petit détail à régler :
    Pour travailler sur les modifs de mon site j’ai un lien http://www.monanciensite.com/wp-admin/ , puis je dois rentrer mon identifiant et code pour acceder aux fonctionnalités WP.
    J’ai essayer de faire http://www.monnouveausite.com/wp-admin/ mais je tombe toujours sur l’ancien site.
    Pouvez vous m’aider pour arriver à mes fins ?

    Répondre
    • Bonjour Claudine,

      A priori, l’étape 7 n’a pas fonctionné correctement. Essayez de refaire un essai pour bien remplacer votre ancien site par le nouveau dans la base de données.

  35. Bonjour,
    Déplacer un site avec cette méthode décrite dans l’article, je l’ai fait de temps en temps sans soucis, sauf pour un gros site, où j’ai trouvé un logiciel pour découper en plusieurs fois la sauvegarde sql, je me demande si le plugin Duplicator aurait réussi malgré la limite du poids d’envoie.

    Bravo pour l’article

    Répondre
  36. Super tuto. Merci ! C’est bien beau de faire des backups, tout le monde le dit, mais c’est tout aussi important de savoir comment réinstaller ! Donc, je ne faisais pas de backup avant de vous lire car je ne voyais pas comment réinstaller le tout par la suite…
    J’utilise WAMP sur Windows 10 en local pour mes sites en développement, tester de nouveaux plugins, configurer le look de mes pages, etc. et j’ai 2 sites en production sur le WEB.
    Pour m’y retrouver en local, je met la date du backup dans le préfixe des tables. Ainsi, je peux avoir plusieurs backups dans la même base de données, suffit de faire référence au bon préfixe de date dans wp-config.php.
    Pour mes installations en multisites, Search and Replace n’effectuait pas les remplacements d’URL dans toutes les tables de ma base de données, donc mes sites ne fonctionnaient pas bien.
    J’utilise donc une combinaison gratuite de BackWPup (pour le back-up bien que je l’ai fait aussi manuellement parfois) et DBSR-master, qui remplace tous les URL parfaitement dans la base de données des tables multisites. Le tout me prend max disons un gros 5 minutes par site.
    Quand à Duplicator, il est très bien, mais il faut passer en PRO ($$$) pour faire du multisite.
    J’ai aussi fini ( ! ) par réaliser pourquoi certains déplacements de local à prod et vice versa ne fonctionnaient pas toujours… Je me suis rendue compte que mes problèmes survenaient quand je mettais des _ (underscore) dans le nom d’un VIRTUAL HOST au lieu de – (tirets), et quand je mettais des – (tirets) dans le nom de ma base de données au lieu de _ (underscore). Donc,
    Virtual Host : accepte les – tirets
    Base de données : accepte les _ underscores
    J’espère que mes expériences pourront aider d’autres personnes!

    Répondre
    • Merci pour ton retour Jasmine ! Content de voir que les articles de la Marmite ont pu t’aider 😉

  37. Merci pour cette aide précieuse !

    Répondre
  38. Bonjour,
    J’ai suivi votre tuto qui est très détaillé c’est parfait !
    Cependant j’ai un petit (enfin assez important) soucis..
    Lorsque je me connecte au back office avec la nouvelle url j’ai perdu toute l’egonomie WordPress. Je me retrouve avec une page blanche et des liens sur la gauche (le menu WordPress) mais aucun contenu, ou presque …
    Avez vous une hypothèse sur ce problème ? Merci d’avance …

    Répondre
    • Bonjour Loanne,
      A mon avis, le remplacement des URL n’a pas bien dû fonctionner. Essayez de relancer le script Search & Replace DB

    • Bonjour et merci de votre retour rapide..
      J’ai relancé le script Search & Replace, cela n’a rien fait .. J’ai tout effacé : mon ftp et ma base de donnée.. j’ai recommencé.. Rien à faire..
      Je l’ai fait sur un autre site sans aucun problème mais celui-ci est bien récalcitrant.. mystère.. Je vais essayé encore une nouvelle fois mais je ne comprends pas …

  39. super
    ton tuto.

    J’aurai certainement oublié la dernière étape.
    Mais heureusement tu étais là.

    ça marche parfaitement.

    PS : lors de l’import de la base de données, j’ai juste du corriger le nom de la base car sinon la copie plante.

    Répondre
  40. Bonjour Bonjour,

    Je m’intéresse depuis peu à WordPress et j’ai déjà commencé à créer un site. Malheureusement je m’y suis pris à l’envers, c-à-d que je crée le site en ligne directement. Chose qui n’est pas très judicieuse, j’en suis conscient.

    Je me tourne vers vous afin de savoir s’il est possible de migrer le site de En ligne pour pouvoir travailler dessus Hors ligne à partir de Wamp.

    Merci d’avance pour votre aide.

    Sam

    Répondre
    • Bonjour Sam,
      Il est tout à fait possible de travailler directement en ligne. Si vous ne voulez pas que des visiteurs voient votre site, il existe des extensions de maintenance ou pour le rendre privé.

      Après si vous voulez passer votre site en local, la procédure est la même. Il faut copier les fichiers, la base et mettre à jour les urls 🙂

  41. Bonjour Alex,

    J’ai déjà tenté de faire la migration vers le local mais je n’ai pas réussi. En fait, je pensais que l’étape de mise à jour des Url n’était pas nécessaire du fait que je voulais travailler en local.

    Je vais tester Ca et reviendrai vers toi en cas de problème.

    Merci pour ton aide

    BàT

    Sam

    Répondre
  42. Bonjour et merci pour ce super tuto !

    Je débute avec WordPress et j’ai suivi vos conseils et tout fonctionne parfaitement. En effet, j’avais fait mon ancien site « manuellement » en HTML & CSS, et le résultat était pas mal, mais pas suffisamment « pro ». J’ai donc refait mon site sous WordPress en modifiant certaines pages (contenu + forme + nom), mais maintenant se pose le problème du référencement des moteurs ! COMMENT FAIRE ??? Avez-vous fait un tuto sur ce point, car j’ai lu qu’il y avait des manips importante à faire dans ce cas ? J’ai donc mis mon nouveau site en « privé » et mon ancien site demeure …

    Merci d’avance

    Eric.

    Répondre
    • Bonjour Eric,

      Pour commencer sur le SEO, je peux vous recommander ce tutoriel 😉
      Bonne continuation

  43. Super utile ! Merci.
    Un bisou Alex de Spartan 😉

    Répondre
    • Ah ah merci 🙂

  44. Joli article, toutefois UpdraftPlus le fait automatiquement…

    Répondre
    • En cas de soucis, il est toujours utile de savoir le faire automatiquement 🙂

  45. Super, merci ! Vous m’avez épargné pas mal d’heures de farfouillage!

    Répondre
    • La Marmite est là pour ça 🙂

  46. Merci pour la checklist…et pour les outils de remplacement url. Comme jusqu’à maintenant je galerais avec ça, je faisais d’abord une première sauvegarde de la base, puis changeait l’URL du site dans les réglages (pour que se soit la même que ma nouvelle url.). Ca a toujours fonctionné et ça évite de passer par des outils, ça passe ?

    Répondre
    • Salut Nico,

      Si ça fonctionne chez toi tant mieux mais dans certains cas cela ne suffit pas et il faut utiliser le script Search & Replace DB pour mettre à jour des urls dans la base. Au pire des cas, maintenant tu sais que cet article existe si jamais tu as des soucis à l’avenir 😉

  47. Merci pour ce billet.
    Cependant, les URL ok, mais les chemins en dur dans la base ??
    Genre le chemin de la home qui peut être différent ?

    Comment le retrouver dans la base.

    Répondre
    • Salut,
      Les chemins en dur dans la base sont remplacées par le script Search & Replace DB 😉

  48. Bonjour Alex,
    Merci de ton aide.

    tu veux dire qu’il faut faire une deuxième passe (après le traitement de l’URL) avec par exemple les chemins ?

    Répondre
    • Oui, mais essaie déjà en « Dry run » pour voir si ça corrige ce que tu veux.

  49. Ok merci, je teste et je ferais un retour.

    Bonne journée.

    Répondre
  50. Salut Alex ton tuto m’a été d’une grande utilité, je viens de migrer mon site sans difficulté.merci

    Répondre
    • Impeccable Serge ! Mais tout le mérite revient à Aurélien 🙂

  51. Bonjour Aurélien et Alex !

    Et merci pour ce tuto que j’ai eu l’occasion de suivre par deux fois sans problèmes (ou presque) !

    Je rebondis sur les commentaires autour de duplicator qui permet souvent d’éviter les surprises… Par exemple, quand une petite erreur de syntaxe vient empêcher l’import de la BDD ou que l’UTF8 n’en fait qu’à sa tête après un split du fichier SQL…

    Petite question :

    L’efficacité de duplicator pour créer des copies locales est incontestable. Idem pour copier vers une installation toute fraîche sur un nouveau serveur en ligne (première mise en ligne ou migration vers un nouvel hébergeur).
    Je m’interroge sur la méthode pour l’utiliser avec un site déjà en ligne… Après avoir effectué toutes les modifications en local, encore faut-il les dupliquer sur le serveur en ligne. Et je me vois mal supprimer tout le contenu FTP et supprimer les tables de la BDD pour permettre à Duplicator de faire une installation depuis installer.php.

    Du coup, quel workflow pour mettre en ligne ses modifications sans risque ?

    Merci et encore bravo pour votre travail !

    Répondre
    • Salut Guillaume,

      Merci pour ton retour, il va falloir que je rédige un article détaillé sur Duplicator (et sur tout le tester avec un gros site pour voir si tout se passe correctement).
      A bientôt

  52. Bonjour et merci encore pour ce tutoriel.

    Je voudrais partager le problème de migration que j’ai eu avec le plugin Wordfence depuis ses deux dernières versions. Les migrations n’ont pas été possibles avec lui. En effet celui-ci installe et utilise un fichier « .user.ini » ainsi que le fichier « wordfence-waf.php » à la racine du serveur sans oublier la modification du .htaccess qui pourtant après modification ont empêché mes tentatives de migration. Tout est rentré dans l’ordre après désinstallation complète du plugin. Si certains d’entre vous ont aussi eu ce problème, existe-il une solution qui permet de ne pas désinstaller Wordfence?
    Je vous remercie par avance.

    Répondre
    • Merci pour ton retour Patrick 🙂
      Perso, je ne suis pas fan de WordFence..

  53. Bonjour, je voulais juste savoir su vous aviez déjà eu le cas de quelqu’un qui a fait un site WordPress en local et qui voudrait le faire migrer, l’exporter vers son hébergeur qui est Amen ??
    Je suis dans ce cas-là et mon site étant terminé en local sur mon pc, je souhaite maintenant l’envoyer sur Amen. Mais voilà je ne sais pas par quel bout cmmencer et si la méthode que vous décrivez est aussi valable pour l’hébergeur Amen ??
    Voilà. Merci pour votre réponse

    Répondre
    • Bonjour,

      Cette méthode est valable pour n’importe quel hébergeur 🙂

  54. Bonjour.
    Merci beaucoup pour ce tuto très clair et précis!
    Il m’a été très utile pour la réécriture des urls.

    Répondre
    • Merci 🙂

  55. Bonjour Alex,

    Je tiens tout d’abord à te remercier pour ton tuto d’une clarté on ne peut plus limpide !!
    Ma migration s’est passée parfaitement.

    Cependant, je suis confronté à une difficulté que je n’arrive pas à comprendre (et donc à résoudre…) et je viens vers toi afin de profiter de tes compétences :
    Mon objectif est de déplacer un site (adresse de type « domaine.com ») vers un sous-domaine du domaine dudit site (adresse de type « sousdomaine.domaine.com ») et pouvoir réutiliser l’adresse « site.com » pour en faire un autre site…
    En suivant tes conseils le déplacement s’est parfaitement passé : l’adresse « sousdomaine.domaine.com » me donne le résultat que j’attendais (je suis content !). Mais lorsque je tape « domaine.com » dans mon navigateur favori, je suis automatiquement rediriger vers « sousdomaine.domaine.com » et non vers une page du genre « site en construction » ou « site inexistant »…
    Bref, il doit me manquer une étape pour désolidariser « domaine.com » et « sousdomaine.domaine.com »… mais laquelle ?
    Pour info, l’adresse « http://domaine.com/wp-login.php » me redirige également vers « http://sousdomaine.domaine.com/wp-admin/ »…
    Je te remercie par avance pour ta réponse.

    Bolid

    Répondre
    • Bonjour Bolid,

      Merci pour ton commentaire ! Je suis content que ta migration se soit bien passée 🙂
      Pour ton souci, je dirais que cela peut venir du fichier .htaccess ou alors la redirection est peut-être effectuée par ton hébergeur.

  56. Bonjour Alex,

    Tout d’abord, j’avoue avoir honte de la lenteur de ma réponse (surtout quand je la compare à ta réactivité…)

    En effet, la migration que j’ai réalisée comme décrite plus haut a eu pour effet, chez mon hébergeur, de « forcer » cette redirection « malheureuse ».
    J’ai résolu ce désagrément tout simplement en la retirant de « domaine.com ».

    Je te remercie pour ton regard aiguisé.
    Restant curieux des informations à lire sur ton site, je reviendrai, aussi régulièrement que possible, lire tes petits papiers.

    A bientôt,
    Bolid

    Répondre
  57. Merci beaucoup pour ce tutoriel, simple clair & complet qui m’a bien aidé !
    Petit coup de frayeur suite au passage du script en voyant que l’ensemble des URLs exceptées la Home ne fonctionnait plus. 🙂

    Le petit passage dans « permaliens » a été nécessaire !

    Répondre
    • Merci pour ton retour Etienne 🙂

  58. Bonjour Alex,
    Dieu merci que des gens comme vous existent sur le net pour partager leur savoir avec tout le monde. Ancien utilisateur de Joomla, je n’ai jamais eu de problème de migration de site. Puis j’ai découvert WordPress que j’aime bien et les migrations de site sont devenues un cauchemar récurrent. Votre article est le seul que j’ai trouvé clair sur le net pour régler ce problème. Merci d’exister.

    Répondre
    • Avec plaisir Richard 🙂

      À bientôt sur la Marmite !

  59. Merci pour cette excellente procédure… première migration du premier coup grâce à celle-ci ! Vraiment génial de votre part cette contribution !

    Répondre
    • Avec plaisir Pierre-André 🙂

  60. Bonsoir,
    J’ai besoin de quelques éclaircissements, s’il vous plait:
    Voilà, j’ai tenté de renouveler mon nom de domaine mais il était déjà trop tard, j’ai donc dû acheter un nouveau nom, je suis passer d’un .com à un .org (avec le même contenu). Le changement s’est bien passé, le site est en ligne avec tout le contenu.
    Sauf que maintenant, les liens sociaux du .com sont toujours indexés.
    Dois-je me faire du soucis?
    Merci.

    Répondre
    • Salut Emry,

      L’idéal serait que tu rachètes ton précédent domaine car il n’est pas possible de migrer les statistiques de partage social (sauf avec l’extension Social Warfare).

  61. Hello,

    en ce qui me concerne, je ne m’en suis toujours pas sorti 🙁

    Je vais tenter de copier mon site de prod en local sans changer le nom de domaine, c’est à dire d’installer au préalable WordPress en local avec le nom de domaine prod. Ce qui implique de modifier le fichier hosts en ajoutant le nom de domaine vers 127.0.0.1. (je fais dans une VM sous virtualbox, donc pas gênant).

    Pensez-vous que ça peut fonctionner ?

    Répondre
    • Salut,

      En théorie, ça devrait fonctionner 🙂
      N’hésite pas à nous faire un retour quand tu auras effectué la manip !

  62. Je fais mon retour Alex 🙂

    Donc concrètement ça fonctionne très bien, en fait j’ai tout simplement créé en local un site WordPress avec le nom de domaine de prod.
    Ensuite j’ai ajouté mondomaine.com = 127.0.0.1 dans mon fichier hosts, ça prend 15 secondes.

    Le seul inconvénient, c’est que vous ne pouvez plus atteindre votre site de prod par son domaine, forcément ça boucle en local, donc c’est plus simple dans une machine virtuelle ou un PC dédié, sauf si vous pouvez atteindre votre URL de prod avec son adresse IP ou son nom de serveur chez le provider (c’est mon cas).

    L’avantage est d’avoir une copie conforme de votre prod en local.

    J’ai créé la BD Mysql à l »identique de la prod (login, nom de la base, extension des tables..

    Enfin, j’ai recopié (en écrasant) toute l’arborescence de HTML (wordpress) en local, puis j’ai supprimé toutes les tables de la base (crées par l’installation WP) et enfin restauré le fichier .sql de dump de ma base de prod.

    Et du coup, je n’ai pas passé le script Replace-DB-master.

    Ça n’a pas fonctionné immédiatement, mais j’ai rapidement trouvé un problème de permaliens.

    Sur ma prod, les permaliens ont cette forme personnalisée : /%category%/%postname%/

    En mettant à l’identique en local, les URL des pages ne sont pas bonnes, ça ne fonctionne pas.

    J’ai du remettre les permaliens sous cette forme personnalisée qui était en place après l’installation locale de WP : /index.php/%year%/%monthnum%/%day%/%postname%/

    mais qui ne correspond pas à la prod, mais là, tout fonctionne parfaitement.

    Le mod_rewrite est bien actif sous apache, j’ai viré le .htaccess en local dans HTML, mais ça ne change rien et de toute façons, c’est le même contenu que sur le prod:

    # BEGIN WordPress

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

    # END WordPress

    Le « RewriteRule . /index.php [L] » me perturbe un peu, mais c’est identique sur la prod ?

    Ou dois-je chercher ??

    La je veux bien une piste ???

    Bonne journée

    Répondre
    • Salut Guy,

      Merci pour ton retour, je suis sûr que cela pourra aider d’autres personnes. Pour ton souci de permaliens avec .htaccess, étant donné que je n’ai jamais fait cette manip, je ne vois pas trop :/

  63. Merci beaucoup pour ce tuto !

    J’ai néanmoins un tout petit problème à l’étape 6 (modification du fichier wp-config) 🙂

    Je dois modifier la valeur de DB_HOST… soit. Mais comment connaître la nouvelle valeur à insérer ?

    J’ai bien le nom de la nouvelle base de données, mais pas le numéro de port (ancien et nouveau serveurs chez OVH).

    Help ? 😀

    Répondre
    • Salut !

      Essaie de mettre localhost, sinon contacte ton hébergeur pour en savoir plus.
      Bon courage 🙂

  64. Bonjour,

    D’abord merci pour cet article et pour les autres aussi, tout aussi intéressants et très utiles.

    Auparavant je travaillais avec Wampserver, et la migration a toujours fonctionné. Aujourd’hui Je suis sur VMWARE et il paraitrait que j’aurais besoin d’une requête SQL ou quelque chose du genre?
    Qu’en pensez vous ?

    Merci de votre réponse.

    Répondre
    • Bonjour,

      Je ne suis pas au courant. D’autres lecteurs pourront peut-être vous aider…

  65. Bonjour,

    Merci pour votre article, j’ai utilisé cette méthode pour la migration d’un site d’un sous domaine à un domaine. (preprod.domaine.com -> domaine.com) Je garde donc la même BDD.
    Malheureusement j’ai pas mal de problème au niveau des liens de mes fichiers images . . .
    Je chercher je cherche . . .

    Répondre
    • Bonjour Gabriel,
      Pour un problème de lien, il faut utiliser le script pour remplacer les URL.

      Bonne continuation

  66. Tres bon article, tres bien expliqué.
    Bravo Alex
    J’ai passé tout mon site en https sans encombres grace à tes precieux conseils.

    Répondre
  67. Bonjour,

    Comme j’ai mené avec succès une migration manuelle d’un site Free vers un autre hébergeur,

    avec l’aide de votre site (et de https://www.gregoirenoyelle.com, je viens témoigner d’un souci rencontré et surtout de la solution trouvée.

    Tout s’est bien passé, y compris le remplacement des Urls avec le script Search-Replace-DB-master. Et bien que le site WP ne situe pas à la racine mais dans un sous-répertoire.

    Donc lancement du site migré et… page blanche. Rien. Nada. Pas d’erreur 500, ni 404. Rien de rien. C’est blanc et c’est tout. La fameuse White Screen Of the Death.

    J’ai beaucoup fouiné. Lu attentivement tous les commentaires sur votre site, celui de Gregoire Noyelle, des pages consacrées spécifiquement au syndrome de la page blanche…. Mais la plupart des utilisateurs ont rencontré le problème suite à l’installation d’un thème ou d’un plugin, ce qui ne correspond pas au cas présent (mon site d’origine fonctionne et le nouveau en est la copie conforme).

    J’ai vérifié 10 fois le wp-config.php, le .htaccess, les droits sur les dossiers, vidé le cache du navigateur…

    C’est finalement un commentaire sur ce site http://www.seomix.fr/page-blanche/ qui m’a donné la solution à mon problème (pas forcément valable donc pour tous les symptômes similaires)…

    La proposition de tomledbetter, le 08 Oct 2011, était astucieuse :
    – renommer wp-config.php en wp-config.php.trucmuche.
    – rafraichir la page et voir si ça ne relancerait pas une installation. C’est le cas.
    – saisir les données habituelles (nom de la base, utilisateur, mot de passe, hôte).
    – cliquer sur suivant. Constater qu’il est content puisqu’il propose de lancer l’installation.
    – accepter ! et constater que l’installation s’arrête en disant qu’elle détecte déjà une installation.
    – elle propose du coup de se connecter au site et… ça marche !!! La page n’est plus blanche : on accède à la fenêtre d’identification de l’utilisateur !

    Que s’est-il passé ? Un nouveau fichier wp-config.php a été créé.

    Tomledbetter disait n’avoir détecté aucune modification entre sa version ancienne et sa nouvelle.

    Pour ma part, il y a eu un élément changé (outre les clés d’authentification) : la ligne define(‘DB_CHARSET’, ‘utf8’); est passée à define(‘DB_CHARSET’, ‘utf8mb4’);

    Je ne suis pas assez expert pour savoir si c’était ça et seulement ça qui coinçait. Mais l’essentiel c’est que finalement, la conclusion ait été heureuse.

    Bonne journée,

    H.

    Répondre
    • Merci pour ton retour Haliimyn. Je t’avoue que je ne vois pas trop d’où cela pourrait venir mais tant que ça marche c’est bon 🙂
      J’espère que ton retour d’expérience pourra aider d’autres personnes !

      A+

  68. Salut,
    apres la mise en ligne de mon site, il apprait juste la page d acceuil les autres pages sont introuvable.
    Comment peut on corriger cela?

    Merci

    Répondre
    • Salut Romeo,

      Essaie de rafraichir tes permaliens dans Réglages > Permaliens

  69. Salut Alex,
    Merci pour ta reponse, mais cela avait deja ete fait.
    (Internal Server Error
    The server encountered an internal error or misconfiguration and was unable to complete your request.
    Please contact the server administrator, and inform them of the time the error occurred, and anything you might have done that may have caused the error.
    More information about this error may be available in the server error log.
    Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.)
    voila le message qui apparait lorsque je clic sur une page de mon Menu

    Répondre
    • Bonjour Romeo,

      Difficile de pouvoir t’aider à ce stade. Cela peut venir d’une erreur de code dans un de tes fichiers. Essaie tout de même de contacter ton hébergeur, il pourra peut-être t’en dire plus sur l’erreur.

  70. Bonjour,
    Petit partage d’expérience…

    Je viens de transférer une maquette avec un petit soucis de taille : j’utilise un plugin qui renomme les pages de connexion et qui s’appuie sur quelques directives dans le fichier .htaccess

    Il faut manifestement désactiver ce plugin (et commenter les lignes en question dans le fichier .htaccess) avant le transfert, sous peine de ne pas pouvoir se connecter en back-end et réactiver les permaliens.

    Passer cet obstacle, tout marche parfaitement. Et merci pour cet outil Search&Replace !

    Répondre
    • Merci pour ton retour Thomas 🙂
      A+

  71. Re-bonjour Alex
    je tout recommencé et cette fois-ci ça fonctionne. Je ne sais pas ce que j’ai loupé, mais j’ai fait attention à toutes les étapes et OK SUCCES.
    Merci pour tes tutos
    Leonardo

    Répondre
    • Impeccable !

      À bientôt sur la Marmite 🙂

  72. Bonjour,
    Je souhaite migrer uniquement certains articles d’un site web WP (Articles contenant chacun 1 fichier pdf) vers un autre site WP.
    que pourriez-vous me conseiller ? J’avoue que je ne suis pas expert et que je n’ai trouvé que des solutions pour migrer des sites entiers.
    Merci par avance, Olivier

    Répondre
    • Bonjour Olivier,

      Pour exporter seulement certains articles, vous pouvez le faire en passant par Outils > Exporter et sélectionner certains articles.
      Bonne continuation
      Alex

  73. Bonjour Alex,
    merci pour ce super article ! J’ai une petite question …
    J’ai bien migré mon site wordpress sur OVH comme il se doit, j’ai la plateforme, mon nom de domaine. Cependant, je me retrouve avec 2 sites différents :

    http://www.thatgirlyouare.wordpress.com
    – thatgirlyouare.com

    Je ne sais pas quoi faire du site wordpress.com qui est toujours présent, et qui concrètement ne me sers plus à rien. Aurais-tu une idée de la démarche à suivre ? Dois-je le désactiver ? Le supprimer ? Le rediriger avec une option ?

    Merci d’avance de ton aide 🙂
    Bonne semaine !
    Naomie

    Répondre
    • Bonjour Naomie, maintenant que vous hébergez votre site sur ovh vous n’avez plus besoin de l’hébergement de wordpress.com

  74. Bonjour,

    J’ai créé il y a maintenant 3-4 ans le site « vitrine » (via WordPress bien évidemment) de mon entreprise.
    Les contenus des pages sont aujourd’hui vieillissants et disons-le à revoir intégralement. Seuls les articles que l’on retrouve dans une rubrique « Actualité » mériteraient d’être conservés dans le cas d’une migration.

    Mais cette idée de migration deviendra dans les prochains mois réalité. Nous ferons prochainement l’acquisition d’un nouveau thème en lien avec les nouveaux besoins de l’entreprise… .
    Du coup ma question est simple : est-il possible d’uniquement récupérer les données faisant référence aux articles du site actuel et de les inclure dans le futur site (export – import de la table wp_posts ?) ?

    Je ne sais si ce commentaire trouvera une réponse (même si cela me dépannerait bien). Cette interrogation me trotte dans la tête depuis un moment mais impossible de trouver une réponse claire.

    En tout cas je tenais à vous dire que vous faites un superbe boulot la Marmite !

    PS : d’ailleurs – rien à voir mais – quand s’achèvera la série de tests des meilleurs thèmes premium disponibles sur ThemeForest ? Petit coup de coeur pour Jupiter, Impreza et… Divi. J’ai hâte de lire les prochains articles du blog.

    Merci.

    Paul
    Un petit nouveau du Chaudron (c’est tout chaud !)

    Répondre
    • Bonjour Paul, connaissez-vous le plugin Duplicator ? https://fr.wordpress.org/plugins/duplicator/
      N’hésitez pas à consulter cette page, c’est personnellement le plugin que j’ai utilisé pour ma dernière migration.

  75. Ah Génial ! Merci beaucoup Nicolas 🙂

    Répondre
  76. Bonjour,
    Tout d’abord merci pour le tutto, j’aimerais savoir où se trouve le fichier wp-config.php à mettre à jour ? Dans la nouvelle base de données créée ou dans le fichier sauvegardé du site ?

    Répondre
  77. Superbe article qui ne m’aura pas évité les sueurs froides mais qui m’a permis de migrer un site d’un hébergement /nom de domaine à un autre fournisseur/autre domaine…
    Je pensais aller droit dans le mur, mais vos articles (pas que celui ci!) sont tellement clairs et bien illustrés que tout semble plus simple. Je me retrouve souvent dans votre Marmite après avoir fait le tour de mes questions sur internet… alors merci pour vos conseils avisés!

    Répondre
    • Merci beaucoup Lisa 🙂

      A très bientôt sur la Marmite alors !

  78. Bonjour,
    Nouveau venu à la recherche de bon conseils et tutos, je suis au bon endroit je pense.
    J’ai suivi cette procédure très bien détaillée avec le script Search-Replace-DB-master pour installer dans un répertoire une copie du site.
    Mais une fois le script achevé, l’adresse site/repertoire/ me renvoie sur site/repertoire/ wp-admin/install.php et me propose une installation !?!
    Ça ne me parait pas normal… pas moi.

    Merci d’avance pour votre aide 😉

    Répondre
  79. Oups, j’ai solutionné…
    le fichier de config n’avait pas les bons préfixes…
    Merci

    Répondre
    • C’est le principal, bonne contiuation

  80. Salut, j’avais utilisé cette méthode avec succès il y a quelques temps, mais j’ai voulu réitérer hier avec un autre site, changement de serveur, et tout est pété, je ne comprends pas (voir : http://www.nicodeb.fr/blog/)

    Répondre
    • Salut Nicolas,

      Si cela n’a pas fonctionné, tu as dû oublié quelque chose. Essaie de recommencer pas à pas 🙂

  81. Bonjour,
    Je cherche juste un tuto pour migrer un site qui fait partie d’un réseau de multisite depuis le local vers son propre dns.
    J’ai utilisé ce moyen pour pouvoir faire mon développement car le site que l’on souhaite refondre devait être laissé en ligne.
    si quelqu’un à une petite idée…!
    thx!

    Répondre
  82. hélas je l’ai fais 3 fois de suite en détaillant bien toutes les étapes, mais j’ai le même résultat … Je comprends pas.

    Répondre
  83. Bonjour,
    Petites questions de débutant :
    1/ la mise à jour des urls du site ne sont necessaires que lorque le site change d’adresse « web ».
    Si je change d’hebergeur mais que je garde mon nom de domaine… Pas de besoin à ce niveau, c’est bien cela ?

    2/ Si oui, j’ai une 2ème question : J’ai par exemple chez OVH, 1 espace de stockage + 1 nom de domaine. Je décide de changer d’hebergeur. Comment dois-je faire pour garder mon nom de domaine chez un nouvel hebergeur ?

    3/ J’ai fais un test de migration, mais pour les changements d’URLS Search-Replace-DB-master me répond cet erreur :
    The script encountered an error while running an AJAX request.

    Voilà, merci pour vos réponses et bravo pour le site !

    Répondre
    • Bonjour Patrick,

      1/ En effet, pas besoin
      2/ vous allez devoir effectuer un transfert de nom de domaine. C’est relativement simple. OVH explique plutôt bien les choses.
      3/ Dans quel contexte avez-vous fait le test de migration?

  84. Merci Nicolas pour vos réponses.
    Concernant l’erreur générée par Search-Replace-DB-master, j’ai suivi le tuto, mon site est détecté comme indiqué mais lorsque je clique sur Dry run ou live run, il m’indique le message cité dans mon post précédent.
    Je me demande si ce n’est pas l’hebergement par lui même qui provoque cette erreur : free.fr
    En effet, j’ai voulu tenter l’experience d’une migration sur un site « brouillon » et j’ai testé sur mon hebergement gratuit chez free en migrant le site d’une adresse free à l’autre.

    J’ai finalement trouvé une solution intermédiaire en bidouillant la BDD à la main avec un editeur de texte en remplaçant « mon1ersite.free.fr » par « mon2emsite.free.fr » .

    La migration a fonctionné.
    Après le brouillon, au pire, sur une situation réelle, je ferais comme ça si Search-Replace-DB-master ne fonctionne pas…

    Merci encore pour vos réponse.

    Répondre
  85. Salut Alex,
    La procédure que tu donnes c’est très bien passée, pas d’erreur, mais . . . (il y a toujours un ‘mais’), la moitié des textes ne s’affichent pas, tout à l’air de tourner comme il faut pourtant aussi bien en FO qu’en BO.
    J’ai mis à jour le htaccess, mais toujours rien.
    Si tu as une idée,

    Merci

    Répondre
    • Bonjour Patrick, c’est super étrange. J’ai déplacé manuellement un site la semaine dernière et tout s’est bien passé alors qu’il y avait énormément de pages et d’articles.
      Nous n’avons malheureusement pas le temps de faire de support mais il serait peut être intéressant de contacter un freelance pour jeter un coup d’oeil car ce genre de situation est assez ennuyeux

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

La Marmite ne peut malheureusement pas fournir de support. Merci d'en tenir compte dans votre commentaire 😉

Si vous ne lui en voulez pas, donnez-lui un j'aime sur Facebook :



169 Shares
Share108
Tweet37
Share24