Aller au contenu

htaccess et htpasswd


Sujets conseillés

Là, je cale... j'ai beau suivre tous les conseils et infos que je trouve ... ça fonctionne pas :nono:

J'ai installé EasyPHP 1.7 ... tout fonctionne sauf la protection par L/P ...

Architecture du site de test :

c:\program files\easyphp1-7\www\ ... le site

Un répertoire private à la racine du site avec un fichier

prv.php

Mon site de test est accessible par : My Webpage

Le login et password du répertoire private est : test/test (Je sais, pas original)

et mon .htaccess du répertoire private est :

AuthUserFile /private/.htpasswd
AuthGroupFile /dev/null
AuthName "Acces Restreint"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>
ErrorDocument 401 /error401.html
ErrorDocument 403 /error403.html
ErrorDocument 404 /error404.html
ErrorDocument 500 /error500.html

Et pour crypter le password, j'ai utilisé le module en ligne que j'ai trouvé sur le site.

Où est mon erreur ??? :wacko:

Merci de votre aide

Lien vers le commentaire
Partager sur d’autres sites

;) J'oubliais...

Dans mon fichier error.log d'apache, j'ai ceci :

[Tue Feb 10 23:17:40 2004] [error] [client 127.0.0.1] (2)No such file or directory: Could not open password file: /private/.htpasswd

[Tue Feb 10 23:17:40 2004] [error] [client 127.0.0.1] user test not found: /private/prv.php

Pourtant, mon fichier .htpasswd dans le répertoire private est bien là !!!! :blink:

Lien vers le commentaire
Partager sur d’autres sites

Je n'ai pas la version 7 sur la machine que j'utilise entièrement, mais je connais le problème, pour l'avoir déjà rencontré...

Cela provient des paramètres par défaut d'Apache définis dans le fichier httpd.conf dans le sous répertoire conf du répertoire d'Apache.

Il me semble que par défaut, le paramètre AllowOverride est fixé à None, y compris pour le répertoire www.

Donc tu peux mettre tous les .htaccess que tu veux, ils ne marcheront pas. Il faut changer la valeur de ce paramètre.

Lien vers le commentaire
Partager sur d’autres sites

Je vais un peu regarder à tout cela mais, quand tu dis :

Donc tu peux mettre tous les .htaccess que tu veux, ils ne marcheront pas

Je suppose que c'est au niveau du login / mot de passe uniquement car pour ce qui est des redirections d'erreur (401, 403 ...etc) : tout fonctionne bien !

Quand à mon .htaccess : le path de mon .htpasswd : est-cd à partir de la racine du site comme je l'ai mis /private/.htpasswd ou est-ce à partir de la racine de mon disque dur genre : "c:\directory\directory\.htpasswd" entre " " comme je l'ai déjà vu ?

Merci

Lien vers le commentaire
Partager sur d’autres sites

Salut dmb,

C'est le problème des installs sous Windows... et des chemins d'accès qui sont "non standards"

En enlevant le / devant private, cela devrait jouer, parce que le htaccess prendra le chemin relatif à partir de la racine du site.

Dan

Lien vers le commentaire
Partager sur d’autres sites

J'ai finalement trouvé ce que je cherchais...

En fait, sous easyphp 1.7 : mes mots de passe sont bien cryptés (avec l'utilitaire fourni par Apache dans /bin - cryptage MD5) car j'avais lu à plusieurs endroit qu'il ne fallait pas crypté le PWD sous windows.

La ligne /dev/null... je l'ai laissée mais c'est vrai que ça sert à rien sous windows

Quand au chemin, c'est la le plus bizarre : impossible de mettre le .htpasswd dans le site ... même en arrêtant le serveur, même en lui donnant le chemin réel (c:/directory/web/.... etc)

J'ai donc finalement testé un chemin en dehors du site... et là, miracle, tout fonctionne... mais je ne sais pas pourquoi au vu de tout ce que j'ai lu avant d'y arriver.

Enfin, merci à tous

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...