GÉNÉRATEUR DE .HTACCESS & .HTPASSWD

eax Messages postés 728 Date d'inscription jeudi 20 juin 2002 Statut Membre Dernière intervention 7 novembre 2007 - 15 mai 2004 à 15:58
cs_Erand Messages postés 1 Date d'inscription mardi 4 septembre 2007 Statut Membre Dernière intervention 17 avril 2009 - 13 janv. 2009 à 01:46
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/22836-generateur-de-htaccess-htpasswd

cs_Erand Messages postés 1 Date d'inscription mardi 4 septembre 2007 Statut Membre Dernière intervention 17 avril 2009
13 janv. 2009 à 01:46
Très bon travail, je cherchais justement un model de ce genre.
cs_zonefree Messages postés 4 Date d'inscription lundi 25 octobre 2004 Statut Membre Dernière intervention 23 octobre 2007
23 oct. 2007 à 10:03
Voici des modifications à faire pour que cela fonctionne partout :

<?php
//////////////////////////////////////////////////////////////////////////////////////////////////////
//TITRE : Générateur de fichier .htaccess & .htpasswd                                               //
//VERSION : 1.0                                                                                     //
//AUTEUR : Joe l'indien                                                                             //
//EMAIL : joelindien@9online.fr                                                                     //
//////////////////////////////////////////////////////////////////////////////////////////////////////
//NOTE : Ce script reste la propriété exclusive de son auteur.                                      //
//La copie, modification et/ou distribution par quelque moyen que ce soit est soumise à l'obtention // //préalable de l'autorisation de l'auteur.                                                          //
//Vous ne devez en aucun cas retirer ces informations.                                              //
//////////////////////////////////////////////////////////////////////////////////////////////////////
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv= "Content-Type" content="text/html; charset=iso-8859-1">
<title>Générateur .htaccess et .htpasswd</title>
</head>

<?php

if($_POST['form'] == "ok"){

$file_pwd = ".htpasswd";
$fp = fopen(".htaccess", "w+"); 
if(!$fp) die("Création du fichier .htaccess impossible !"); 
$content = "AuthName ".$_POST['authname']."
AuthUserFile ".$_POST['file']."$file_pwd
AuthGroupFile /dev/null
AuthType Basic
<limit GET POST>
require valid-user
</Limit>
";
fputs($fp, $content); 
fclose($fp);

$pwd_md5 = md5($_POST['passwd']);
$fp2 = fopen(".htpasswd", "w+"); 
if(!$fp2) die("Création du fichier .htpasswd impossible !"); 
$content2 = $_POST['user'].":".$pwd_md5;
fputs($fp2, $content2); 
fclose($fp2);

echo"

Récupérer les deux fichiers et stockez les dans le répertoire  $file 

Fichier .htaccess

Fichier .htpasswd

Générer à nouveau
";
}
if(empty($form)){
echo"
<form action"ht_generate.php" method ="post">

<hr color= "#0099CC" size="3" width="60%" align="left">

 Fichier .htaccess 

Nom identification

Chemin de l'emplacement du répertoire à protéger

<hr color ="#0099CC" size="3" width="60%" align="left">

Fichier .htpasswd

Utilisateur

Password

</form>

";
}
?>

</html>

cs_CEPTA Messages postés 13 Date d'inscription vendredi 24 janvier 2003 Statut Membre Dernière intervention 28 mars 2007
27 sept. 2006 à 23:57
bjr j'ai pas saisi le rapport entre allopass et .HTACCESS ?
hisoka2501 Messages postés 264 Date d'inscription lundi 19 mai 2003 Statut Membre Dernière intervention 7 juillet 2009
17 juin 2006 à 03:09
en fait plus faire plus clair: free préfere avoir un trous de securitée abérant et donc laisser les pass en clair dans les fichiers plutot que de les cripter
et comble du comble: si on choisis de crypter chez free => ca ne passe pas

faites comme moi: hébergement local et perso (et par pitiée arretez avec easyphp (jammais de maj))
cs_dexter74 Messages postés 8 Date d'inscription mardi 25 avril 2006 Statut Membre Dernière intervention 13 avril 2009
26 avril 2006 à 14:58
bonjour a tous,j aimerai que quelqu un pourrait m aider j ai pas compris.
dexter74@hotmail.fr
http://dexter74240.free.fr
/var/www/sdb/9/6/dexter74240/path.php pour infos
si vous plait
merci d avance
cs_dexter74 Messages postés 8 Date d'inscription mardi 25 avril 2006 Statut Membre Dernière intervention 13 avril 2009
26 avril 2006 à 14:58
quelqu un pourrait m aider j ai pas compris.

dexter74@hotmail.fr
http://dexter74240.free.fr
/var/www/sdb/9/6/dexter74240/path.php pour infos
negfreddy Messages postés 16 Date d'inscription mercredi 26 janvier 2005 Statut Membre Dernière intervention 25 mai 2009
26 janv. 2005 à 15:55
boujours a tous
moi je voudrais crée un chat avec mots de passe de connection payante ou autre mais avec le meme contexte
j ai essayé vos systeme mais sais pas expliqué si possible vous pourriez me passé plus d information merci .
la_pin Messages postés 275 Date d'inscription mercredi 11 août 2004 Statut Membre Dernière intervention 15 décembre 2005
11 janv. 2005 à 17:38
bah, pas beau du tout, une belle erreur 500 !
Testé sur free avec windows, ça marche pas !
kankrelune Messages postés 1293 Date d'inscription mardi 9 novembre 2004 Statut Membre Dernière intervention 21 mai 2015
5 janv. 2005 à 22:13
moi j'utilise celui là... et ça marche plutot nikel... et le truc c'est qu'il est multiuser sans sql... tout dans le .htpasswd... .. . :oD

Ca pourra peut etre vous donner des idées... .. . ;o)

@ tchaOo°
familypm Messages postés 14 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 20 décembre 2005
3 janv. 2005 à 19:24
En fait, chez Laposte ça ne marche pas non crypté, mais ça fonctionne parfaitement crypté avec crypt(), donc l'inverse de chez Free, c'est à n'y rien comprendre.
familypm Messages postés 14 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 20 décembre 2005
3 janv. 2005 à 17:42
En effet, chez Laposte ça ne marche pas, mais chez Free il n'y a aucun problème.

Toutefois, j'espère trouver la solution car un mot de passe non crypté n'est pas satisfaisant.

En attendant, je conserve les sessions pour me connecter à la partie administration de mon CMS.
cs_pyranhaz Messages postés 236 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 13 décembre 2004
2 janv. 2005 à 19:38
Mais familypm, si tu enlève la fonction de cryptage du password, Apache ne reconnaîtra pas le password non ?

Que compte tu faire pour contrer ce problème ?

As-tu testé si tu avais accès avec le nom d'usagé et password SANS la fonction crypt() ?

il faut assi testé avec n'importe lequel nom d'usagé et mot de passe... on sait jamais...

normalement si c'est pas crypté Apache n'acepte rien car il ne comprend pas ce qui est écrit

@±±
familypm Messages postés 14 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 20 décembre 2005
2 janv. 2005 à 12:29
J'ai testé ce script sur mon CMS (Phortail) chez Free, après quelques modifications pour l'adapter aux exigences de Free et après avoir retiré le cryptage md5() ou crypt() qui posent quelques problèmes, ce script fonctionne parfaitement.

Je pense que je vais l'adopter, après encore quelques tests, pour protéger l'accès à la zone d'administration de mon CMS, à la place des sessions.
cs_pyranhaz Messages postés 236 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 13 décembre 2004
1 nov. 2004 à 22:12
pour le serveur no problemo, c'est un serveur payant qui ne limite pas beaucoup...

$Login = $_SERVER['PHP_AUTH_USER'];
$Password = $_SERVER['PHP_AUTH_PSW'];
sont bien compris par le serveur et quand je met et .htpasswd classic et que je mets un echo $login dans mon index, j'ai bien le nom de l'usager qui s'inscrit...

Selon le support technique de mon hébergeur se serait une incompatibilité entre serveur (apache et mysql)

il m'a donné le lien suivant à consulter [url]http://www.linuxhelp.net/guides/htaccessmysql//url

je pense aussi a faire un écriture dans mysql par un fichier php externe...

ce fichier pourrait avoir un contact avec la table mysql et y inscrire son contenu (ajouter ou enlever selon le cas)

je suis a voir cette idée...
cs_ribos Messages postés 53 Date d'inscription samedi 26 juillet 2003 Statut Membre Dernière intervention 27 septembre 2007
1 nov. 2004 à 22:00
est-tu sur que ton php est correctement configuré de telle sorte que $_SERVER['PHP_AUTH_USER'] et $_SERVER['PHP_AUTH_PSW'] soient bien accessibles ?
Le mot de passe dans ta base n'est pas crypté ?
cs_pyranhaz Messages postés 236 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 13 décembre 2004
1 nov. 2004 à 01:27
pourquoi ce ci ne fonctionne pas ???

$Login = $_SERVER['PHP_AUTH_USER'];
$Password = $_SERVER['PHP_AUTH_PSW'];

$sql_acces="SELECT * FROM `Prestige_Etape_2` WHERE Login='$Login' AND Password='$Password'";
cs_pyranhaz Messages postés 236 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 13 décembre 2004
1 nov. 2004 à 00:28
Intéressant cette discussion, je cherche justement un moyen non pas de générer les fichier mais simplement de les administrer...

Je veux pouvoir utiliser MySQL pour gérer mes usagers, leur password et le temps d'Accès avec date...

J'ai aucune idée si ca marchera, je sais juste qu'il n'est pas requis que le htpasswd se nomme comme cela... il peut donc à priori s'appeler taratata.php si on le désire... ce serait les infos dans .htaccess qui déciderait quel fichier utiliser...

Ce que je veux faire ca semble réaliste ou pas ???

et pour le cryptage du password pour qu'il soit correctement interprété, je dois utiliser quel format en utilisant MySQL ???

ou dois-je utiliser un crypteur externe ???

J'ai cet utilitaire en cgi ici:

http://www.zone-international.com/cgi-bin/crypt.cgi

Si ca peut vous être utile...

mais si on pouvait entrer le mot de passe dans MySQL et que ce dernier crypte de façon adéquate, ce serait vraiment cool...
eax Messages postés 728 Date d'inscription jeudi 20 juin 2002 Statut Membre Dernière intervention 7 novembre 2007 2
19 mai 2004 à 08:27
ah ok merci :p
cs_ribos Messages postés 53 Date d'inscription samedi 26 juillet 2003 Statut Membre Dernière intervention 27 septembre 2007
18 mai 2004 à 21:45
Pour répondre à la derniere question d'eax,
$_SERVER['PHP_AUTH_USER'] pour l'utilisateur
$_SERVER['PHP_AUTH_PSW'] pour son mot de passe
Pour plus d'infos :

http://fr.php.net/manual/fr/features.http-auth.php
cs_iubito Messages postés 629 Date d'inscription mercredi 3 juillet 2002 Statut Membre Dernière intervention 9 octobre 2006
17 mai 2004 à 14:07
Allez lez Verts moi j'dirai plutôt :o))
ON EST EN D1 ! ON EST EN D1 ! ON EST, ON EST, ON EST EN D1 ! :)))
defkrie Messages postés 435 Date d'inscription vendredi 20 septembre 2002 Statut Membre Dernière intervention 20 novembre 2004
17 mai 2004 à 13:32
au passage allé l'om!!!
eax Messages postés 728 Date d'inscription jeudi 20 juin 2002 Statut Membre Dernière intervention 7 novembre 2007 2
17 mai 2004 à 12:05
d'ailleurc ce serait bien de gérer pour plusieurs utilisateurs

g une question à ce sujet à propose, comment on fait pour récupérer en php la variable qui correspond au login entré lors de l'identification
eax Messages postés 728 Date d'inscription jeudi 20 juin 2002 Statut Membre Dernière intervention 7 novembre 2007 2
17 mai 2004 à 06:59
oui moi aussi g eu l'erreur 500 lol, et sous linux ça marche pas avec le mot de passe, ça doit venir du MD5 tu as raison
cs_iubito Messages postés 629 Date d'inscription mercredi 3 juillet 2002 Statut Membre Dernière intervention 9 octobre 2006
17 mai 2004 à 06:49
et pour générer un mot de passe, il faut utiliser crypt() et pas md5()

bon ton truc ne marche pas sous windows, le répertoire protégé retourne une erreur 500 serveur Apache.
cs_iubito Messages postés 629 Date d'inscription mercredi 3 juillet 2002 Statut Membre Dernière intervention 9 octobre 2006
17 mai 2004 à 06:10
Salut, très bonne idée.
Mais as-tu pensé au $_POST ??? (j'ai pas l'impression)

et plutôt que de les générer dans le répertoire du fichier php, tu peux directement les générer dans $_POST['file'].'.htaccess' ! ça gagne du temps :)
eax Messages postés 728 Date d'inscription jeudi 20 juin 2002 Statut Membre Dernière intervention 7 novembre 2007 2
15 mai 2004 à 15:58
ah ben justement j'en voulais un merci :p
Rejoignez-nous