Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

« Httpd htaccess » : différence entre les versions

De The Linux Craftsman
Page créée avec « Assurez-vous d'avoir correctement configuré votre serveur Apache httpd avant d'aller plus loin ! = Pour quoi faire ? = Les fichiers ''.htaccess'' sont des fichiers de configuration d'Apache, permettant de définir des règles dans un répertoire et dans tous ses sous-répertoires. Les principales raisons d'utilisation des fichiers .htaccess sont : *gérer l'accès à certains fichiers; *ajouter un mime-type; *protéger l'accès à un r... »
 
 
Ligne 40 : Ligne 40 :
= Création du fichier de mot de passe =
= Création du fichier de mot de passe =
Pour créer le fichier de mot de passe, il faut utiliser la commande ''htpasswd''
Pour créer le fichier de mot de passe, il faut utiliser la commande ''htpasswd''
<pre>
<source lang=bash>
# htpasswd -c /path/to/.htpasswd jcf
# htpasswd -c /path/to/.htpasswd jcf
New password:
New password:
Re-type new password:
Re-type new password:
Adding password for user jcf
Adding password for user jcf
</pre>
</source>


On vérifie que les mots de passe sont bien chiffrés:
On vérifie que les mots de passe sont bien chiffrés:
<pre>
<source lang=bash>
# cat .htpasswd
# cat .htpasswd
jcf:RM1/WS9zqOV8o
jcf:RM1/WS9zqOV8o
</pre>
</source>
La prochaine fois que l'on veut ajouter un compte il ne faut pas utiliser l'option ''-c'' (pour ''create''):
La prochaine fois que l'on veut ajouter un compte il ne faut pas utiliser l'option ''-c'' (pour ''create''):
<pre>
<source lang=bash>
# htpasswd /path/to/.htpasswd magali
# htpasswd /path/to/.htpasswd magali
New password:
New password:
Re-type new password:
Re-type new password:
Adding password for user magali
Adding password for user magali
</pre>
</source>

Dernière version du 31 mai 2026 à 11:52

Assurez-vous d'avoir correctement configuré votre serveur Apache httpd avant d'aller plus loin !

Pour quoi faire ?

Les fichiers .htaccess sont des fichiers de configuration d'Apache, permettant de définir des règles dans un répertoire et dans tous ses sous-répertoires.

Les principales raisons d'utilisation des fichiers .htaccess sont :

  • gérer l'accès à certains fichiers;
  • ajouter un mime-type;
  • protéger l'accès à un répertoire ou un fichier par un mot de passe;
  • définir des pages d'erreurs personnalisées.

Principe de fonctionnement

Le fichier .htaccess est placé dans le répertoire dans lequel il doit agir. Il agit ainsi sur les permissions du répertoire qui le contient et sur tous ses sous-répertoires.

Vous pouvez placer un autre fichier .htaccess dans un sous-répertoire d'un répertoire déjà contrôlé par un fichier .htaccess. Le fichier .htaccess du répertoire parent reste en « activité » tant que les fonctionnalités n'ont pas été réécrites.

Avant d'aller plus loin, assurez-vous qu'Apache lise les .htaccess en passant la directive AllowOverride de None à All dans le fichier /etc/httpd/conf/httpd.conf

Pour cela éditez le fichier et cherchez la ligne <Directory "/var/www/html" >. Plus loin, il vous suffit de modifier la ligne AllowOverride None en AllowOverride All.

Bloquer l'accès à des ressources

Un fichier .htaccess est composé de deux sections :

  • une première qui contient les chemins vers les fichiers contenant les définitions de groupes et d'utilisateurs;
  • une deuxième qui précise les conditions d'accès.
# Définition
AuthUserFile /path/to/.htpasswd 
AuthGroupFile /path/to/.htgroup
AuthName "Accès protégé" 
AuthType Basic
#Conditions d'accès
Require valid-user
  • AuthUserFile définit le chemin d'accès absolu vers le fichier de mot de passe;
  • AuthGroupFile définit le chemin d'accès absolu vers le fichier de groupe;
  • AuthName entraîne l'affichage dans le navigateur Internet de : « Tapez votre nom d'utilisateur et votre mot de passe. Domaine: "Accès protégé" »;
  • AuthType Basic précise qu'il faut utiliser AuthUserFile pour l'authentification;
  • Require valid-user précise que l'on autorise uniquement les personnes identifiées. Il est possible de préciser le nom des personnes autorisées : Require user {username}

Création du fichier de mot de passe

Pour créer le fichier de mot de passe, il faut utiliser la commande htpasswd

# htpasswd -c /path/to/.htpasswd jcf
New password:
Re-type new password:
Adding password for user jcf

On vérifie que les mots de passe sont bien chiffrés:

# cat .htpasswd
jcf:RM1/WS9zqOV8o

La prochaine fois que l'on veut ajouter un compte il ne faut pas utiliser l'option -c (pour create):

# htpasswd /path/to/.htpasswd magali
New password:
Re-type new password:
Adding password for user magali