MacXtrem

Articles

AccueilArticlesOverclock

Rechercher dans :    (4 caractères min)

Les ".htaccess"

Comment utiliser les ".htaccess" sur le serveur Apache de Mac OS X

Avant tout, si vous utilisez Mac OS X Server, cette manipulation ne fonctionne pas (voir première réaction).
Ensuite, je n'ai pas testé la manip. avec Apache 2, elle n?est valable que pour la version livrée avec Mac OS X Client (Apache 1.3) qui est en soi très bien...

? Les ".htaccess" c'est quoi?
Simplement : des autorisations web. Par exemple, vous avez un serveur web perso avec un dossier où vous mettez des choses que vous n'avez pas envie que tout le monde voit (des choses compromettantes... ? ) alors les .htaccess sont là pour ça ! Lorsque vous arriverez sur ce dossier (d'un navigateur web bien sûr) vous aurez une jolie boite de dialogue (avec message personnalisable en plus!) qui vous demande de rentrer un login et un password. Ça inclut bien sur les documents qui sont dedans.


? Comment faire?
On va avant tout activer les .htaccess pour qu'Apache puisse utiliser les fichiers qui lui dirons de protéger tel ou tel dossier.
Ensuite, pensez à avoir accès à une session admin.

Ouvrez votre terminal et tapez : "sudo pico /etc/httpd/httpd.conf" ensuite, tapez sur entré, mettez votre password admin, et faites "ctrl + w" et tapez ".htaccess", pour trouver facilement la ligne ou il faut changer quelque chose qui permettra à Apache d'utiliser les .htaccess.
Vous arriverez à ça :



Mettez "All" à la place de "None" ce qui va donc activer les .htaccess pour Apache, et faites "ctrl + x" pour sauvegarder, et fermez la fenêtre.

Et voilà, c'est actif. Il ne reste plus qu'à faire les fichiers qu'il faut pour protéger tel ou tel dossier, ce que nous allons voir...


En fait, il y a deux fichiers :
- .htaccess : on en met un dans chaque dossier que l'on veut protéger. C'est lui qui dit à Apache qu'il faut un password, et dans lequel on met le message qui dois s'afficher (personnalisable donc).
- .htpasswd : celui la est tout simple, il contient des logins, et des password, autant que l'on veut. (password crypté)

Bien sûr ce sont des fichiers invisibles. D?où le ".".


Voilà la manière que je trouve la plus simple et rapide pour les générer :


Allez dans le terminal, et tapez la ligne qui vous conduiras au dossier que vous voulez protéger. Pour faire simple tapez "cd " (Attention a l'espace!) et faites glissez le dossier à protéger à cote du cd.
Vous allez être donc dans votre fameux dossier, maintenant, on va créer un fichier .htaccess dans ce dossier.

Pour commencer tapez "pico .htaccess" (pico : éditeur texte du terminal)

Insérez ensuite ça dans l'éditeur :

Authname "dossier perso"
AuthUserFile /Library/WebServer/Documents/perso/.htpasswd
AuthType Basic
require valid-user

Fermez en enregistrant, faites donc "pomme + x" et "y".

Ce qu'il y a dans les guillemets de Authname est justement le message qui s'affichera dans la boîte de dialogue.
La ligne en dessous, AuthUserFile est celle qui va dire ou est le fichier .htpasswd, qui contient les passwords.

Par contre, là où placer ce fichier .htpasswd... Moi je l'ai mis directement dans le dossier à partager. À vous de voir ou vous voulez qu'il soit, la racine du serveur web, votre dossier en question... C'est votre organisation !


Dernière étape, créer ce fichier .htpasswd, très simple !
Retournez dans le terminal (qui a dis "Pfff encore !?" ), dans l'endroit où vous avez décider de mettre votre fichier .htpasswd, et tappez ceci :
htpasswd -c .htpasswd login

Remplacez "login" par votre login bien sûr... On vous demandera un password, une confirmation et voilà !

Dernières choses :
- Si vous voulez rajouter des logins supplémentaires, c'est la même chose mais sans le "-c" qui lui effacerait votre fichier .htpasswd actuel pour en créer un nouveau.
- Si vous voulez supprimer des comptes, ouvrez donc le fichier .htpasswd avec un éditeur texte (donc par exemple Pico, du terminal) et supprimez la ligne entière où il y a la login à supprimer.


Enjoy ! - N'hésitez pas à me contacter pour une remarque, une question, critique...

Pyrrha, le 28 mars 2005
Retour à l'accueil

Cliquez ici pour poster une réaction

Réactions:


Dominik Fusina - 04/01/2005

Attention pour les possesseurs d'OSX SERVER : cette manip ne marche pas. En fait, la configuration APACHE est customisée par les outils d'APPLE, ceux qui administre le serveur. En fait, il faut modifier les fichiers se trouvant dans le répertoire "httpd/sites". C'est dans ce répetoire que vous trouverez les configs de chaque Virtual Host (sites WEB) gérés par ADMIN SERVER d'Apple.
Il faut ensuite, pour chacun, modifier le ALLOWOVERRIDE à ALL au lieu du NONE par défaut.
Je suis en train de réfléchir à une solution LOGICIELLE ou bien à la modification des fichiers par défaut utilisés par ADMIN SERVER, ce qui permettra de modifier ces paramètres plus simplement qu'en les éditant un à un...

Pour plus d'infos, me contacter sur mon web: http://www.fusina.net
jimmyosx - 25/05/2005

Bel article ! Même si ce langage est encore trop compliqué pour moi
Crimosoft - 20/10/2005

Tres tres bon article ... tres instructif ! chapeau bas messieurs
nizar - 02/12/2005

hola ca va
Gribouille - 06/02/2007

Domonik Fusina
Merci beaucoup pour le post sur OSX Serveur, ça conclu pour moi une recherche de 4H sur comment activer les htaccess!
Encore merci.
XwZ - 13/12/2008

salut,
attention, sur debian c'est /etc/apache2/site-available/default
NONI - 30/12/2009

Nickel
J'arrive longtemps après la publication du topic ms il m a été très utile

Sous Snow Leopard, le chemin du httpd.conf ext /etc/apache2 ...

Merci encore
Réactions par page :     Page : 1

Poster une réaction:

Laissez votre adresse email pour être prévenu d'une nouvelle réaction.

Nom:
Email (facultatif):
  
Message:
Recopiez le code de validation:
Pour aider au développement du site, cliquez sur les bannières pour faire vos achats sur l'AppleStore. Merci.

RSS           

Tous droits réservés © MacXtrem 2004 - 2007