Mots de passe

Pas de protection par mot de passe pour le dossier wp-admin

Blog Mots de passe Pas de protection par mot de passe pour le dossier wp-admin
0 comments

Sur Internet vous trouverez beaucoup d’articles qui expliquent comment ajouter une protection par mot de passe pour votre back-office.

Il existe un problème

Avec une protection par mot de passe sur ce dossier, il y a un gros problème car cela va empêcher toutes les requêtes vers admin-ajax.php et admin-post.php.

Dans le Codex de WordPress vous pourrez trouver une page vous expliquant comment implémenter l’AJAX. Vous y lirez que admin-ajax.php se trouve dans /wp-admin/.

En utilisant une protection par mot de passe pour ce dossier vous bloquez l’accès à ces fichiers ce qui veut dire que les requêtes AJAX sont cassées.

Il existe une solution

Vous pouvez tout à fait faire ça, mais il n’y a qu’un seul bon moyen :

[pastacode lang=”markup” manual=”AuthType%20Basic%0AAuthName%20%22Protected%20page%22%0AAuthUserFile%20%2Fhome%2F.htpasswd%0A%0ARequire%20valid-user%0A%3CFiles%20admin-ajax.php%3E%0A%20%20Order%20allow%2Cdeny%0A%20%20Allow%20from%20all%0A%20%20Satisfy%20any%0A%3C%2FFiles%3E%0A%3CFiles%20admin-post.php%3E%0A%20%20Order%20allow%2Cdeny%0A%20%20Allow%20from%20all%0A%20%20Satisfy%20any%0A%3C%2FFiles%3E%0A%3CFiles%20%22%5C.(css%7Cgif%7Cpng%7Cjs)%24%22%3E%0A%20%20Order%20allow%2Cdeny%0A%20%20Allow%20from%20all%0A%20%20Satisfy%20any%0A%3C%2FFiles%3E” message=”” highlight=”” provider=”manual”/]

Avec ce code, vous bloquerez les accès au dossier /wp-admin mais PAS pour ajax/post ni les contenus comme les jpg/css/js. Ceci est la bonne méthode.

Vous pouvez utiliser htaccesstools.com pour générer le fichier .htpasswd que vous copierez sur votre serveur comme indiqué dans l’exemple : /home/.htpasswd.

htpasswd generator field

htaccesstools.com

Maintenant, gardez en tête que cette protection par mot de passe n’est PAS la seule façon de protéger vos contenus et fichiers. Notre plugin de sécurité SecuPress le fera facilement sans que vous n’ayez à taper la moindre ligne de code.

0 comments