Table des matières
Protéger votre site web ou un répertoire par un fichier .htaccess
Si vous souhaitez mettre en place sur votre site web ou un répertoire spécifique un accès limité par un couple d'identifiant/mot de passe, nous vous invitons à utiliser un fichier .htaccess lié à un fichier .htpasswd.
Voici un exemple :
1 - Créer le fichier .htpasswd
Le fichier .htpasswd
est à générer via la commande htpasswd (du paquet apache2-utils) sous Linux ou bien vous pouvez utiliser un outil d'encryptage de password tel que : http://www.4webhelp.net/us/password.php
Le contenu de votre fichier est présenté sous la forme utilisateur:motdepasse, par exemple :
ryan:oeteHNuwJnH7k
Vous pouvez également avoir plusieurs utilisateurs dans le même fichier. Il suffit de mettre les autres à la ligne, par exemple :
ryan:oeteHNuwJnH7k bob:13ZfyRhVBrhhU
Une fois le fichier .htpasswd
prêt il vous suffira de le déposer (uploader) sur votre instance (en ASCII et non pas en BINARY) dans le répertoire vhosts/
correspondant à votre site, comme ceci:
/srv/data/web/vhosts/www.mysite.com/.htpasswd
.htpasswd
dans le répertoire htdocs/
!
2 - Créer votre fichier .htaccess
Ajoutez dans un fichier .htaccess
(son nom ne peut être modifié, c'est un standard du serveur web Apache)
AuthUserFile /srv/data/web/vhosts/www.mysite.com/.htpasswd AuthName "Zone protégée par mot de passe" AuthType Basic <limit GET POST> require valid-user </limit>
Déposez le fichier à la racine du dossier /htdocs/
de votre virtualhost pour protéger tout le site web ou bien dans un répertoire précis si vous voulez protéger uniquement cette partie de votre site web (comme un répertoire admin contenant des outils de backoffice par exemple).
Dans votre fichier après AuthUserFile
il faut indiquer le chemin absolu pour le fichier .htpasswd, c'est à dire l'endroit où est situé le fichier sur votre serveur. Attention cependant, ce chemin n'est pas exactement le même que celui indiqué en sFTP mais se présente ainsi :
/srv/data/web/vhosts/www.mysite.com/.htpasswd
Si vous avez un doute, créez un fichier .php dans votre dossier /htdocs/
et incluez le code suivant qui vous retournera le chemin absolu pour votre instance :
<?php echo realpath('chemin.php'); ?>
N.B. : Créez le fichier “chemin.php” au même endroit, pour visualiser le résultat dans votre navigateur.
Vous pouvez personnaliser le nom de la zone protégée en modifiant le message entre guillemets après AuthName
.
.htaccess
ou que vous vous référez à une documentation externe notez que votre fichier ne doit en aucun cas contenir la ligne suivante :
AuthGroupFile /dev/null
Si cette ligne est présente votre instance Simple Hosting retournera alors une erreur. Il est donc important de ne pas l'ajouter.