Avant de renter dans la configuration du contrôle de l'utilisateur pour accéder à une ressource, sachez que ce fichier permet également :

  • De définir une page d'erreur 404 sur mesure
  • La restriction d'accès par mot de passe
  • Déplacer certaines pages ou répertoires d'un site dans l'optique d'une restructuration

Dans tout les cas pour que votre fichier .htaccess soit pris en compte il faut configurer la directive Apache "AllowOverride".

C'est la rôle de la directive AllowOverride de préciser la manière selon laquelle les directives contenues dans un fichier .htaccess doivent être prises en compte, si ces directives ont le droit de supplanter ou non celles qui sont incluses dans la présente directive. Ainsi, l'administrateur a le dernier mot ! S'il veut inhiber totalement l'action de .htaccess, il précisera "AllowOverride None" pour le répertoire. Sinon, il peut accorder des droits complets au fichier .htaccess avec "AllowOverride All" (prise en compte totale) ou limités en ne positionnant que certaines valeurs. On limite souvent cette délégation de gestion à "AllowOverride AuthConfig" ou "AllowOverride AuthUserFile", ce qui est suffisant pour protéger l'accès à un site privé par une authentification.

Par exemple, la déclaration de votre site à travers Apache :

ServerName www.votreserveur.fr
DocumentRoot /var/www/votreSite

<Directory /var/www/votreSite>
   Options FollowSymLinks MultiViews
   AllowOverride AuthConfig
   Order allow,deny
   allow from all
</Directory>

Votre fichier .htaccess :

AuthUserFile /var/www/votreSite/dossierPrive/.htpasswd
AuthGroupFile /dev/null
AuthName "Acces Restreint"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>

Créez votre fichier .htpasswd :

htpasswd -c /var/www/votreSite/dossierPrive/.htpasswd utilisateur
puis saisissez votre mot de passe

Voilà votre dossier http://www.votreserveur.fr/dossierPrive/ est protégé, pour y accèder, il faudra saisir "utilisateur" et le mot de passe que vous avez déclaré.