Aller au contenu

recuperer info htaccess


Sujets conseillés

bonjour

J'ai securisé avec .htaccess un repertoire de mon site. Une boite de dialogue s'ouvre et demande le user et le mot de passe. Je voudrias savoir s'il est possible de les recuperer dans la page qui se charge ensuite.

Merci

Modifié par elomaster
Lien vers le commentaire
Partager sur d’autres sites

Salut,

Vraisemblablement parce qu'il faut utiliser la variable $_SERVER, comme par exemple dans ce code-ci:

<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
   header('WWW-Authenticate: Basic realm="My Realm"');
   header('HTTP/1.0 401 Unauthorized');
   echo 'Texte utilisé si le visiteur utilise le bouton d\'annulation';
   exit;
} else {
   echo "<p>Bonjour, {$_SERVER['PHP_AUTH_USER']}.</p>";
   echo "<p>Votre mot de passe est {$_SERVER['PHP_AUTH_PW']}.</p>";
}
?>

Lien vers le commentaire
Partager sur d’autres sites

Cela ne semble pas fonctionner.

question : je doit quand même utiliser un .htaccess et un .htpasswd.

Il me demande mon mot de passe mais il dit qu'il incorrect.

Modifié par elomaster
Lien vers le commentaire
Partager sur d’autres sites

Allons bon, le 1er hébergeur français en terme de nombre de clients refuserait que les webmasters utilisent un .htaccess ?

Ce n'est pas sérieux :)

-> Ton mot de passe est-il en clair dans le .htpasswd ou est-il crypté ?

-> Le chemin d'accès vers le .htpasswd depuis le .htaccess est-il correct ?

-> Ce même chemin d'accès est-il bien spécifié en navigation interne ?

-> Comment peux-tu vérifier que la variable PHP_AUTH_USER ne marche pas alorsque tu n'arrives même pas à accéder à la page protégée ?

aidez moi svp

Que crois-tu que Dan essaie de faire depuis tout à l'heure ? ;)
Lien vers le commentaire
Partager sur d’autres sites

En fait moi ce que je veux recuperer c'est le user (le password je m'en ...). La page se charge (mais pas avec le script de Dan).

Sans le script de Dan j'ai essayé un truc du genre :

echo '$_SERVER['PHP_AUTH_USER']';

mais rien ne s'affiche sur la page (qui se charge)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Le User ne peut être récupéré que s'il y a une autentification. Sans elle l'utilisateur est enonyme.

Essayer d'afficher '$_SERVER['PHP_AUTH_USER']'; alors que l'utilisatur n'est pas identifié ne sert à rien vu que cette variable sera vide.

Donc, soit tu utilises le script complet, soit tu n'auras pas d'identification. :)

Dan

Lien vers le commentaire
Partager sur d’autres sites

Est-ce que tu as créé le fichier .htpassword avec un mot de passe encrypté ?

Quel est ton hébergeur ?

OVH ? Dans ce cas il FAUT encrypter les mots de passe :!:

Assure-toi aussi que le chemin vers le fichier .htpasswd soit bon.

Et transfère le fichier en mode "TEXTE" comme précisé dans ce post: http://www.webmaster-hub.com/index.php?sho...ndpost&p=117048

Lien vers le commentaire
Partager sur d’autres sites

En local le script fonctionne mais dés que je le balance sur le serveur (d'ovh) ca ne fonctionne plus. J'ai bien transferé le .htaccess et .htpasswd en ascii (faut il aussi envoyé la page php en ascii ??)

Modifié par elomaster
Lien vers le commentaire
Partager sur d’autres sites

Essaie de faire une page contenant

<?phpinfo() ?>

Tu aura ainsi toutes les infos accessibles au niveau de PHP.

Sinon, est-ce qu'on te demande ton nom et ton mot de passe lorsque tu essaie d'acceder a ta page ?

Lolo

Lien vers le commentaire
Partager sur d’autres sites

Ouioui il est crypté. Le chemin est bon puis ce que sans le script l'authentification fonctionne ??

Sans .htaccess/.htpasswd il n'y a pas d'authentification sauf si ton script php contient du code d'authentification. :(

Es-tu certain de ne pas avoir du code en double (.htaccess + code php ?)

Et si cela fonctionne en local, garde à l'esprit que les chemins ne sont pas les mêmes en local et sur le serveur. Le même code ne peut pas fonctionner aux deux endroits sans modification :whistling:

Dan

Lien vers le commentaire
Partager sur d’autres sites

En fait j'ai pas tout compris quand je met le script php je dois supprimer mon .htaccess ??

j'ai essayé mais ca marche pas.

autre question comment accéder au .htpasswd avec le code php ??

Modifié par elomaster
Lien vers le commentaire
Partager sur d’autres sites

Salut

Bon effectivement j'ai pas tout compris !!

Si j'ai bien compris il y a 2 cas :

1 j'ai un .htaccess dans le repertoire a protéger et un .htpasswd (pas forcement dans le même repertoire) ->la protection est efficace mais j'arrive pas a recuperer le user.

2 J'ai pas de .htaccess mais un code php dans la page ??? et j'ai encore un.htpasswd

(ca doit pas être ca mais bon ...)

Je croit que j'ai vraiment besoin d'un eclairage (j'ai pas trouvé de reponse dans l'article sur les .htaccess)

Modifié par elomaster
Lien vers le commentaire
Partager sur d’autres sites

Bonjour, fin d'après'm.

Me semblait que les explications plus haut étaient claires ? non ? bon.

dans ton .htaccess, tu indiques ceci:

AuthUserFile le-path-du-htpasswd
AuthName "Accès protégé"
AuthType Basic
<Limit GET POST>
Require valid-user
</Limit>

ATTENTION: le path chez OVH n'est pas le même qu'en local, sous windows...

Dans ton .htpasswd, tu indiques le(s) user(s) et le(s) mot(s) de passe associé(s) mais CRYPTE(s) (l'outil du hub te permet de le faire. N'oublie pas la clé).

Place tes fichiers là où ils doivent être, et teste.

xpatval

Modifié par xpatval
Lien vers le commentaire
Partager sur d’autres sites

Bon, pour resume ...

Est-ce que la protection de ta page fonctionne ? Si tu rentre le bon utilisateur et le bon mot de passe, est-ce que tu vois ta page ?

* Si oui, t'as juste un pb au niveau de PHP et un simple

phpinfo()

t'affichera les variables connu de PHP dont le fameux user. Y'a rien de plus simple.

* Si non, c'est que c'est ton authentification HTTP qui foire et faut definitivement que tu regarde la doc du .htaccess et les infos fournis par ton hebergeur.

Modifié par destroyedlolo
Lien vers le commentaire
Partager sur d’autres sites

C'est normal que ça ne marche pas... :P :

Sous OVH mutualisé, PHP_AUTH_USER est toujours vide (je ne me rappelle plus pourquoi, mais c'est comme ça...)

Utilise $_SERVER['REMOTE_USER'].

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...