demande d'aide : Htacces htpasswd .

M-Mo
Invité n'ayant pas de compte PHPfrance

09 déc. 2010, 14:53

Bonjour,
je voudrais autoriser l acces a certaines pages de mon site uniquement a quelques personnes que j'aurais choisi..
j ai suivi un tutoriel : http://www.siteduzero.com/tutoriel-3-14 ... ccess.html

j ai cree deux fichiers :
  • .htaccess
    .htpasswd
que j ai mis dans le dossier a proteger.. pour info tout mon site est en html sans php..

Quand j essaie d entrer dans la page proteger, une fenetre d'identification s ouvre. MAIS quand j'entre le LOGIN et PASS , le navigateur tourne sans jamais ouvrir la page ...

Voici le contenu de mes deux fichier:
.htaccess
AuthName "Page d'administration protégée"
AuthType Basic
AuthUserFile "/vhosts/x/x/xxxxx/www/invite/.htpasswd"
Require valid-user
.htpasswd
login:passpass
MERCI par avance de votre aide

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

09 déc. 2010, 15:28

salut,

heu tu a bien essayer l'exemple ? <?php echo crypt('kangourou'); ?> pour remplir ton fichier .htpasswd ?

@+
Il en faut peu pour être heureux ......

Invité
Invité n'ayant pas de compte PHPfrance

09 déc. 2010, 17:28

heuuu Non. :roll:

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

09 déc. 2010, 23:07

ben fait leça ira mieux !!!
Il en faut peu pour être heureux ......

Invité
Invité n'ayant pas de compte PHPfrance

10 déc. 2010, 10:36

je l ai ajoute en dessous de :

login:kangourou

dans mon fichier .htpasswd.. ca change rien. si j ai bien compris c'est pour crypter

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

10 déc. 2010, 13:44

hum mwé as tu essayé le script donnée en bas du tuto du sdz ?

sinon je viens de faire une moulinette du genre qui insère directement (a tester)
<?php
if (!empty($_POST['submit'])) {
	if (!empty($_POST['user'])) {
		if (!empty($_POST['pwd'])) {
			$line = $_POST['user'].':'.crypt($_POST['pwd'])."\n";
			$fp = fopen('.htpasswd','a+');
			fputs($fp,$line);
			fclose($fp);
			$valid='Insertion dans le fichier ok';
		}
		else {
			$erreur['pwd'] = 'Il faut entrer un mot de passe';
		}
	}
	else {
		$erreur['user'] = 'Il faut entrer un utilisateur !';
	}
}
if (file_exists('.htpasswd')) {
	$file = file('.htpasswd');
}
else {
	$file = array();
}
 ?>
<!DOCTYPE html>
<html lang="fr">
<head>
<title>Génération de fichier .htpasswd</title>
</head>
<body>
<?php
if (!empty($file)) {
	echo '<h1>Contenu du fichier .htpasswd</h1>';
	foreach($file as $line) {
		list($user,$cryptPwd) = explode(':',$line);
		echo $user,' ==> ',$cryptPwd,'<br />';
	}
}else {
	echo '<p style="color:red;font-size:16px; font-weight:bold;border: 1px solid red; background-color:#ffffff;text-align:center;padding:0.5em;margin:auto;width:50%;">Le fichier est vide !</p>';
}
?>
<form action="" method="post">
<label for="user">Utilisateur</label><input type="text" name="user" id=user" /><br />
<label for="pwd">Mot de passe </label><input type="text" name="pwd" id=pwd" /><br />
<input type="submit" name="submit" value="insérer" />
</form>
</body>
</html>
@+
Il en faut peu pour être heureux ......

ViPHP
ViPHP | 4039 Messages

10 déc. 2010, 14:31

Vérifie que:
1. ton htpasswd n'est pas vide
2. que le chemin absolu tu htpasswd dans le htaccess est bien valide. Un accès qui tourne en rond est le symptôme par excellence d'un htaccess qui ne trouve pas son htpasswd.
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.