Aujourd’hui j’ai décidé de faire un article un peu spécial, puisque je vais parler d’une erreur vraiment pénalisante qui arrive de temps en temps sur les sites WordPress. Nous verrons également comment corriger cela ! 🙂

Un client a remarqué qu’il n’avait plus d’accès à son backoffice en utilisant http://nomdesonsite.fr/wp-admin. WordPress lui renvoi le message « Access denied« .

Mais que peut bien vouloir dire ce message qui nous empêche d’accéder à l’administration de notre site internet ? Tout simplement que nous n’avons plus l’autorisation d’accéder à cette page.

Mais pourquoi ? J’y allais bien avant ! Et comment vais-je administrer mon site internet maintenant ? Comment puis-je corriger ça ?

Il y a deux solutions pour corriger ce problème d’access denied ! La première est de restaurer son site internet à une date antérieure, en utilisant une copie de votre site internet. Pour cela vous aurez besoin d’une copie de vos données que vous aurez préalablement récupérée en vous connectant sur votre serveur en utilisant un logiciel comme Filezilla pour vous y connecter en FTP. Vous aurez également besoin d’un dump de votre base de données que vous irez importer dans votre phpmyadmin. Mais cette solution n’est à mettre en place qu’après avoir essayé les quelques conseils ci-dessous. De plus elle ne garantit pas la réparation du problème, il faudra peut-être revérifier les droits d’accès.

Mais je n’ai pas fait de sauvegarde ! Comment puis-je faire ?

Ne pas faire une sauvegarde de son site, c’est jouer avec le feu. Une sauvegarde vous protège des piratages mais aussi de vous-même (mauvaise manipulation, mauvaise mise à jour d’une extension…) ! Si vous n’avez pas le temps de le faire vous devriez songer à trouver un prestataire pour gérer la maintenance de votre site WordPress ! Heureusement pour vous il existe encore un moyen de récupérer la main sur votre site internet mais cela demandera un peu plus de temps.

Vérifier les droits d’accès !

Tout d’abord on va vérifier que les droits d’accès (CHMOD) de ce fichier sont bien configurés. Pour cela, il vous suffit de vous connecter en FTP ou SFTP en utilisant les identifiants fournis par votre hébergeur. Faites un clic droit sur les fichiers souhaités et cliquez sur « Droits d’accès au fichier… ».  Si tout semble correct, cela peut alors venir d’un plugin que vous avez installé. Dans 90% des cas, l’erreur « access denied » sera résolue avec le rétablissement des droits d’accès.

Généralement, c’est votre hébergement qui a bloqué l’accès à ce fichier par mesure de sécurité (trop de spam..). Si vous n’êtes pas à l’aise avec tout cela, vous pouvez également les appeler. Mais cela peut également être une à cause d’une faille dans une extension ou un thème.

Supprimer temporairement les extensions

En effet, plusieurs extensions WordPress peuvent interférer avec le processus de connexion. Désactivez tous vos plugins en supprimant le dossier « plugins » qui se trouve dans le répertoire /wp-content/plugins/ (en vous assurant de faire une copie avant).

Si vous avez peur de supprimer des fichiers sur votre serveur, vous pouvez éventuellement le renommer de cette façon /wp-content/XXplugins/, ainsi vous n’aurez plus qu’à remettre le nom d’origine pour réactiver les extensions.

Désactiver le thème

Pour cette étape, même procédé que plus haut. Vous allez devoir aller dans wp-content/themes/ et renommer le dossier. Une fois renommé, votre site ne trouvera plus son thème. Vous le remarquerez rapidement, tout le design de votre site internet aura été chamboulé. Si le problème est résolu et que vous arrivez à vous connecter à votre site alors le souci vient de votre thème.

Upload de nouveau le fichier wp-login.php

Il arrive parfois que le fichier wp-login.php soit corrompu. Dans ce cas là, la meilleure des choses à faire est de retélécharger une version propre de WordPress à cette adresse : Télécharger WordPress. Une fois fait, récupérez le fichier wp-login.php et remplacer votre ancien (sur votre serveur) par le nouveau (que vous venez de télécharger).