====== htaccess ====== Vous pouvez vous servir d'un fichier ''[[http://httpd.apache.org/docs/2.2/howto/htaccess.html|.htaccess]]'' pour modifier le comportement du serveur web pour le répertoire dans lequel il se trouve (ainsi que //tous ses sous-répertoires//). ===== Protéger un répertoire avec un mot de passe ===== Il est possible de protéger l'accès à un répertoire Web avec un mot de passe. Prenons un usager '''' dont le [[:compte:page_web|répertoire web]] est '''' et le sous-répertoire à protéger est ''''. Ce répertoire sera autorisé en lecture pour quelqu'un fournissant le nom '''' et le mot de passe '''', contenus dans le fichier ''<.fichier-mdp>''. Voici alors la procédure pour créer ce fichier. * Se brancher en ssh sur ''arcade.iro.umontreal.ca''. * Aller dans son répertoire web (ne pas aller dans le ''public_html'': mieux vaut ne pas mettre ''<.fichier-mdp>'' là où ''apache'' pourrait le montrer à tout le monde). * Utiliser la commande ''htpasswd -n '' et fournir le '''' deux fois. Cela retourne une ligne '':#############'' (le ''hash'' de ''''). * Créer le fichier ''<.fichier-mdp>'' si nécessaire et y ajouter cette ligne (par ex. à l'aide de ''vi''). Ensuite, on ajoute un fichier ''.htaccess'' contenant les règles d'authentification dans le répertoire à protéger. * Créer le sous-répertoire '''' s'il n'existe pas déjà. * Se déplacer dans ce sous-répertoire. * Créer un fichier ''.htaccess'' contenant les lignes suivantes : AuthUserFile /u//<.fichier-mdp> AuthGroupFile /dev/null AuthName AuthType Basic Require valid-user **Attention**: le chemin ''/u/'' du ''.htaccess'' est interprété //sur le serveur web// et n'a de sens que dans ce contexte. Sur ''arcade'', vous ne trouverez //pas// le fichier ''<.fichier-mdp>'' dans ''/u//'' mais bien dans ''/home/www-ens//''. //Note//: Ne pas oublier d'ajuster les permissions de lecture de tous les répertoires et fichiers créés. Exemple : cd /home/www-ens/alice htpasswd -n bob On entre deux fois le mot de passe voulu. Le résultat est bob:nhMKTi4awTWbk qu'on ajoute au fichier ''.htpasswd'' echo "bob:nhMKTi4awTWbk" >> .htpasswd On se déplace dans le répertoire à protéger cd public_html mkdir -p secrets cd secrets vi .htaccess et on met dans le ''.htaccess'' ces lignes AuthUserFile /u/alice/.htpasswd AuthGroupFile /dev/null AuthName "Zone de secrets" AuthType Basic Require valid-user