.htaccess signifie « accès hypertexte ». Il s'agit du fichier de configuration par défaut au niveau du répertoire Apache. .htaccess peut être utilisé pour sécuriser un répertoire particulier sur le serveur Web. L'une des utilisations les plus courantes consiste à exiger l'authentification de l'utilisateur afin de servir certaines pages Web.
Créer un fichier .htaccess.
Créez d'abord un .htaccess fichier dans la racine du document de votre site Web pour protéger l'ensemble du site ou dans un répertoire spécifique et ajouter le contenu suivant.
AuthType Basic AuthName "Secure Content" AuthUserFile /home/myuser/public_html/.htpasswd require valid-user
Créer des utilisateurs dans .htpasswd
Commencez maintenant par créer des utilisateurs dans .htpasswd défini dans le fichier .htaccess. Vous pouvez ajouter un utilisateur et un mot de passe en texte brut ou crypté md5.
Ajouter un mot de passe au format texte :
# htpasswd -c /home/myuser/public_html/.htpasswd myuser
Ajout d'un mot de passe au format crypté md5
# htpasswd -cm /home/myuser/public_html/.htpasswd myuser
Configurer Apache pour autoriser l'authentification .htaccess
Par défaut, Apache n'autorise pas l'utilisation de .htaccess. Vous devez donc également mettre à jour le paramètre ci-dessous dans votre httpd.conf pour autoriser l'authentification basée sur .htaccess. Nous utilisons la variable Allowoverride pour définir si .htaccess sera lu par apache ou non.
From: AllowOverride none To: AllowOverride AuthConfig
Définir AuthConfig n'autorisera que l'authentification dans .htaccess, le reste du paramètre (le cas échéant) sera ignoré. Pour autoriser tous les paramètres définis dans le fichier .htaccess, utilisez "All" à la place de AuthConfig".
Redémarrez Apache et testez la configuration.
Après avoir apporté des modifications au fichier de configuration Apache (httpd.conf ou apache2.conf), vous devez redémarrer le service Web Apache.
Pour les utilisateurs CentOS/RHEL 6/5 :
# service httpd restart
Pour les utilisateurs de CentOS/RHEL 7 :
# systemctl enable httpd.service
Pour les utilisateurs Ubuntu/Debian :
# service apache2 restart
Merci d'avoir lu cet article, j'espère qu'il vous aidera à comprendre comment configurer l'authentification de base dans Apache en utilisant .htaccess.