Protéger le répertoire d’un site Internet avec Htaccess et Htpasswd
Publié le 20 octobre 2014 Par WOoOinux
Les fichiers .htaccess sont des fichiers de configuration des serveurs Apache. Ils permettent :
- De faire une configuration de PHP spécifique pour un site Internet;
- De faire de la réécriture d’URL;
- De gérer les pages d’erreurs;
- De sécuriser des répertoires par un mot de passe;
Nous allons voir dans ce tutoriel comment sécuriser le répertoire d’un site internet.
1. Création du fichier .htaccess
Dirigez-vous dans le répertoire que vous souhaitez sécuriser puis créez un fichier nommé .htaccess.
Copiez-y le code ci-dessous :
Il vous faudra adapter les lignes AuthName et AuthUserFile pour qu’il pointe vers le chemin de votre fichier .htpasswd (que vous n’avez pas encore créer mais ça va venir…). Attention, le chemin vers le fichier .htpasswd doit être absolu ! Pour connaître ce chemin, si par exemple vous êtes sur un hébergement mutualisé, il existe une fonction PHP qui va vous permettre d’obtenir cette précieuse information.
2. Connaître le chemin absolu du répertoire à protéger
Créez un fichier nommé path.php et copiez-y le code ci-dessous :
Uploadez ce fichier dans le répertoire que vous souhaitez protéger puis accédez-y via votre navigateur (par exemple) :
Notez bien l’information renvoyée par votre navigateur puis supprimez le fichier path.php.
Éditez le fichier .htaccess et modifiez la valeur de AuthUserFile par l’information que vous avez notez il y a deux minutes en prenant soin de remplacer path.php par .htpasswd dans le chemin obtenu.
3. Créer le fichier .htpasswd
Créez maintenant le fichier .htaccess à l’endroit exacte indiqué par la valeur du champ AuthUserFile contenu dans le fichier .htaccess.
Dans ce fichier vous allez indiquer un identifiant (de votre choix) ainsi qu’un mot de passe (de votre choix aussi) qui devra être crypté. Il existe un site Internet qui permet de générer la ligne que vous devrez coller dans le fichier .htaccess. Il suffira de rentrer un identifiant et un mot de passe et le site nous donnera gentiment la ligne que vous n’aurez plus qu’à copier.
Rendez-vous sur le site http://www.htaccesstools.com/htpasswd-generator/
Indiquez un identifiant ainsi qu’un mot de passe puis cliquez sur le bouton “Create .htpasswd file” :
Le site génère le contenu du fichier .htpasswd :
Copiez la ligne générée par le site et collez la dans votre fichier .htpasswd. Sauvegardez le fichier.
Rendez-vous sur votre site et tentez d’accéder à votre répertoire protégé (par exemple) :
Si vous avez correctement suivi le tutoriel vous devriez voir apparaître une boîte de dialogue vous demandant un identifiant ainsi qu’un mot de passe :