Protéger un dossier http par .htaccess/.htpasswd

Notez que cet article a été écrit pour la première fois il y a plus de 2 ans, mais n'est pas nécessairement obsolète.

Protéger un dossier avec .htaccess & .htpasswd
.htaccess & .htpasswd

Un fichier .htaccess est un fichier de configuration d’Apache, permettant de définir des règles dans un répertoire et dans tous ses sous-répertoires.

Pour éviter à un utilisateur de pouvoir lister un répertoire s’il ne contient pas de fichier index.(html/php), on ajoute la ligne:

.htaccess:

Pour protéger un dossier avec un mot de passe, utile par exemple si l’on veut avoir un site d’évaluation et qu’il ne soit pas référencé par les moteurs de recherche.

AuthName est le message qui invitera le visiteur à entrer son login/MdP (pas de support UTF-8).

AuthUserFile est le chemin absolu vers le fichier .htpasswd qui contiendra les paires login/MdP.

La difficulté est de trouver ce chemin absolu. Pour ce faire, il suffit de créer un petit fichier PHP qui donnera ce chemin. Créez donc un fichier chemin.php qui contiendra:

En lançant ce fichier copié sur le serveur, il affichera le chemin absolu vers chemin.php. Par exemple:  /home/site/www/admin/chemin.php.

Il suffit de remplacer alors chemin.php par .htpasswd: /home/site/www/admin/.htpasswd. On peut alors supprimer chemin.php.

Le fichier .htpasswd contient le login et le mot de passe crypté sous la forme: login:MdP_crypté. Le MdP est crypté grâce à la fonction crypt() de PHP.

Voici un petit outil qui fait le travail:

login:
MdP:

Ligne à entrer dans le fichier .htpasswd:

Et hop, on peut protéger son dossier. Utile pour le dossier d’un site de développement en ligne.

 

 

Soumettre un commentaire

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