pb d'identification HTTP

Pour parler de tout ce qui concerne l'hébergement web, c'est ici.
Répondre
istud
Messages : 2
Enregistré le : 02 août 2011 16:43
Compte LegTux : cahier2texte

pb d'identification HTTP

Message par istud »

Bonjour,

Cela fait maintenant un an que j'utilise le cahier de texte Gepi sur Legtux.
Le cahier de texte a toujours été consultable par n’importe qui ayant l'adresse du site.

Depuis peu j'ai activé la consultation du cahier de texte avec identifiant et mot de passe. Mais cela ne marche pas.
Avec la communauté de Gepi, nous pensons que cela vient du côté Legtux.

En gros, lorsque on entre l'identifiant et le mot de passe, la boîte de dialogue ré-apparait toujours. (cf. ci-dessous)
Image

Je vous re-transmet le message d'un des développeur qui m'aide dans la communauté de Gepi:
"Le pb se situe effectivement au niveau du serveur, il faudrait le signaler aux administrateurs (de Legtux) en leur indiquant l'adresse du script ( http://cahier2texte.legtux.org/login_passwd.php ), lequel script est le copier-coller de l'exemple d'identification HTTP simple de la page http://www.php.net/manual/fr/features.http-auth.php"
Merci de votre aide
Cordialement,

stud
hamza
Messages : 44
Enregistré le : 09 déc. 2011 21:57

Re: pb d'identification HTTP

Message par hamza »

Bonjour,

Est-ce que vous avez correctement saisi les informations de connexion dans votre fichier .htpasswd et surtout, avez-vous crypté votre mot de passe avant de le mettre dans votre fichier .htpasswd ?

Cordialement,
Avatar du membre
Simon Le Guével
Administrateur
Messages : 1307
Enregistré le : 04 sept. 2010 12:30
Compte LegTux : simon
Localisation : Saint-Brieuc
Contact :

Re: pb d'identification HTTP

Message par Simon Le Guével »

Bonjour,

@hamza : l'identification n'est ici pas traitée par Apache, mais par PHP.

@stud : effectivement, le problème est bien de notre côté.
Il vient de la façon dont notre Apache appelle PHP (CGI). Les variables données à Apache par votre navigateur ne sont pas transmises à PHP, d'où le nouveau prompt.
Pour que ça fonctionne, il va falloir adapter un petit peu vos scripts.

Premièrement, dans le .htaccess du même dossier, ajoutez :

Code : Tout sélectionner

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
</IfModule>
Ensuite, dans votre fichier PHP, il faut ajouter (avant l'utilisation des variables $_SERVER['HTTP_AUTH_USER'] et $_SERVER['HTTP_AUTH_PW']) :

Code : Tout sélectionner

list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']) = explode(':' , base64_decode(substr($_SERVER['HTTP_AUTHORIZATION'], 6)));
Enfin, si la page login_passwd.php est vraiment une copie de l'exemple du manuel PHP, il faut remplacer

Code : Tout sélectionner

if (!isset($_SERVER['HTTP_AUTH_USER']))
par

Code : Tout sélectionner

if ($_SERVER['HTTP_AUTH_USER'] == NULL)
Voilà ! ;)
Avatar du membre
Simon Le Guével
Administrateur
Messages : 1307
Enregistré le : 04 sept. 2010 12:30
Compte LegTux : simon
Localisation : Saint-Brieuc
Contact :

Re: pb d'identification HTTP

Message par Simon Le Guével »

J'ai perdu l'auteur du fil ou bien ? :P
Avatar du membre
Guillaume
Administrateur
Messages : 703
Enregistré le : 04 sept. 2010 12:50
Compte LegTux : rguillaume
Localisation : Montluçon

Re: pb d'identification HTTP

Message par Guillaume »

Il a fait une demande d'inscription pour tester ce matin ;)
Répondre