Importer votre WordPress en local sur WampServer pour vos tests
Sous Windows, il existe différentes plateformes de développement web de type WAMP (Windows, Apache, MySQL, PHP) dont EasyPHP et WampServer. L’intérêt de ces plateformes est de travailler avec le même type d’infrastructure que celui que l’on va retrouver sur la majorité des serveurs web dans le monde, à savoir LAMP (Linux, Apache, MySQL, PHP) sous une distribution Debian par exemple. Personnellement, j’utilise WampServer que je trouve le plus simple et ergonomique, même s’il peut connaitre des petits dysfonctionnements à cause de certaines mises à jour Windows ou d’autres raisons que je vais vous présenter ci-dessous.
Installer et configurer WampServer
Tout d’abord, rendez-vous sur wampserver.com pour télécharger la version de Wamp correspondant à votre OS (32 ou 64 bits). Lancez l’installation qui va vous créer un dossier www dans lequel vous retrouverez vos sites en local. Une fois WampServer lancé, il va falloir le configurer pour que WordPress puisse fonctionner correctement en local.
Il faut déjà activer la réécriture d’URL sur Apache, pour cela faites un clic gauche sur le logo WampServer dans la barre des tâches, puis allez dans Apache > Modules Apache descendez la liste et cliquez sur rewrite_module. Wamp Server va redémarrer tout seul et activer le module. Autre chose à configurer pour être tranquille en local, la taille des fichiers que vous pourrez uploader qui est à modifier dans le php.ini (accessible depuis un clic gauche sur le logo Wamp dans la barre des tâches, puis PHP > php.ini. Dans ce fichier qui va s’ouvrir avec votre bloc note, recherchez upload_max_filesize et passer sa valeur à 10 Mo par exemple :
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 10M
Il arrive qu’il y ait des problèmes avec WampServer, généralement il peuvent se régler de la manière suivante :
Rapatrier WordPress en local
Maintenant que notre plateforme de développement web est en place, nous allons rapatrier notre site pour pouvoir effectuer nos tests. Pour l’instant, faites un simple copier/coller de tous les fichiers de votre site en prod dans le dossier www de Wamp dans un dossier nomdusite.com. Faites également un export complet de votre base de données en production au format SQL.
Si vous vous rendez sur http://localhost/nomdusite.com à moment-là, vous aurez un beau message « Erreur lors de la connexion à la base de données ». Nous allons régler ça tout de suite.
Importer sa Base de données dans phpMyAdmin en local
Pour renseigner les bonnes informations permettant à votre site sous WordPress de tourner en local, rendez-vous dans phpMyAdmin à l’adresse http://localhost/phpmyadmin/. Connectez-vous en root et sans mot de passe (pas besoin, vous êtes en local) et créer une base de données en interclassement utf8_general_ci du même nom que celle en ligne. Puis, importer votre base de données en cliquant sur « importer » et en sélectionnant l’export de la bdd que nous avons fait auparavant depuis votre site en ligne.
Une fois importée, allez dans la table wp_options (si vous n’avez pas touché aux préfixes de vos tables) puis modifier les valeurs de siteurl (ligne 1) et de home (ligne 36) par http://localhost/nomdusite.com
Modifier le fichier wp-config.php
Ensuite, il faut encore modifier le wp-config.php situé à la racine du site pour renseigner les identifiants de connexion à la base de données dans WordPress :
// ** Réglages MySQL - Votre hébergeur doit vous fournir ces informations. ** //
/** Nom de la base de données de WordPress. */
define('DB_NAME', 'nom-de-la-bdd');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
Modifier le .htaccess de WordPress en local
Enfin, il faut modifier le fichier .htaccess situé à la racine du site pour que l’URL rewriting fonctionne en local :
# BEGIN WordPress
RewriteEngine On
RewriteBase /localhost/nomdusite.com/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /nomdusite.com/index.php [L]
# END WordPress
Tout est désormais en place pour vos tests, il ne vous reste plus qu’à travailler avant de remettre en ligne vos fichiers modifiés !
David Bourguignon
Merci Benjamin pour ce tutoriel très très utile ! J’aurais deux petites remarques…
1) Je rajouterais une précision dans le paragraphe « Modifier le fichier wp-config.php » : il est également utile de spécifier define(‘DB_HOST’, ‘localhost’); dans ce fichier.
2) Je rajouterais un paragraphe au sujet de la réinitialisation du mot de passe de l’administrateur, en précisant que celle-ci peut être faite directement dans la base de données :
– se connecter avec PHPMyAdmin puis ouvrir la table wp_users ;
– identifier le compte administrateur (c’est souvent le premier créé) puis l’éditer ;
– dans le champ user_pass inscrire le nouveau mot de passe ;
– dans la liste déroulante « Fonction », choisir la valeur MD5 (la plupart du temps) puis sauvegarder ;
– se connecter au site avec le nouveau mot de passe.
Qu’en penses-tu ? Encore merci !
Benjamin Yeurc'h
Merci David pour ta contribution ! C’est vrai qu’il faut modifier le DB_HOST si celui-ci n’est pas déjà en localhost. Pour la réinitialisation du mot de passe directement depuis phpMyAdmin, je crois que ton commentaire fait parfaitement l’affaire si certains veulent le faire 😉
Jacques
Super ! Grand merci, j’avais des problèmes avec les permalinks… après quelques heures passés sur différents forum / tutoriels. Je viens de trouver la réponse ici !!
Mots clés : htaccess wordpress wamp, wamp wordpress permalinks, wordpress wamp
Benjamin Yeurc'h
Ravi d’avoir pu aider Jacques 😉
Lauriane
Bonjour,
Voilà deux jours que je tente d’importer un site que je développe (sous wordpress ) en local pour travailler sur wamp.
Sauf que même en suivant le tuto à la lettre je finis toujours dans le même problème.. Forbidden you dont have permission to access /
J’ai remarqué que si je supprime le fichier .htaccess j’ai accès au wp-admin et à la page home. Le reste des pages est en 404. J’essaye alors de voir les permaliens mais à ce moment ça recrée un .htaccess et c’est fini je n’ai plus accès à rien.
Une idée pour m’aider ? J’avoue je désespère !
virginie
Bonjour, j’aurais une question. Je viens de faire la manip en suivant bien point par point. Ca ne fonctionne pas, mais je n’ai pas de fichier .htaccess car le site récupéré est sur serveur linux (si j’ai bien compris) . Et mon pc de travail sous windows. Es ce que c’est ce fichier qui pose problème ? si oui une simple création avec le contenu ci-dessus peut régler le problème ? merci
Benjamin Yeurc'h
Il y a des chances car le fichier .htaccess est capital dans cette procédure. Sur Windows par défaut, vous ne voyez pas les fichiers « cachés », il faut activer Affichage > Options > Modifier les options des dossiers et de recherche > Afficher les fichiers, dossiers et lecteurs cachés puis appliquer votre paramétrage. Ensuite, utilisez le bloc note ou un éditeur comme Notepad pour l’éditer et pouvoir l’enregistrer en .htaccess
Thomas
Ton tuto est très intéressant. Je ne l’avais jamais fait dans ce sens, et c’est une bonne idée en effet.
J’avais plus l’habitude de développer des sites web depuis mon local puis de les mettre par la suite en production. Les démarches sont un peu les même mais dans l’autre sens.
Merci pour ton article !
Tassel
Super merci !
J’ai un site, que j’ai mis sur Wamp grâce à votre technique.
Je dois lui faire une refonte, mais je veux garder sa base telle qu’elle, et faire de la nouvelle version une autre version qui n’écraserait pas la première.
Comment faire pour avoir les 2 sites en parallèle ?
Merci d’avance !
Blandine,
Benjamin Yeurc'h
Vous pouvez réimporter votre « nouveau » site sur un sous-domaine ou un répertoire (je vous le déconseille car cela va créer de la duplication de contenus aux yeux de Google) mais deux versions d’un même site ne peuvent pas cohabiter sur les mêmes URLs, c’est une version ou l’autre.
Calade
Super article !
Alors là chapeau , Je me suis étonné…j’ai réussi du premier coup en procédant pas à pas en suivant les explications et les commentaires et j’ai réimporté tout mon site pour essayer de changer le thème.
Après, l’opération inverse d’ici quelque temps…
Merci,
Marco
Bonjour Benjamin.
Bravo pour ce tuto très complet et très accessible – je me rangerais volontiers dans la catégorie des « bidouilleurs » en informatique -.
J’ai réussi à importer mon site et à le faire fonctionner grâce aux petites manips à faire sur wp-config / .htaccess
et surtout celles de la table wp_options que je n’avais pas trouvées sur d’autres tutos et qui me bloquaient.
Encore merci.