Je voudrais proposer à qui cela peut servir une appli en php, qui permet de creer un script ".htaccess" et générer un mot de passe directement dans le dossier à protéger.
Il suffit de copier le script "access.php" listé ci-dessous dans le dossier à protéger et l'apeller par:
www.monsite.com/dossier_a_proteger/access.php
Dans les cases correspondantes inscrivez votre login, envoyez et voilà votre dossier est désormais protégé.
Il suffit de copier le script "access.php" listé ci-dessous dans le dossier à protéger et l'apeller par:
www.monsite.com/dossier_a_proteger/access.php
Dans les cases correspondantes inscrivez votre login, envoyez et voilà votre dossier est désormais protégé.
Code:
<?php
/*
Application Open Source
crayonpro (copyleft) 2012
Auteur: Roberto Hamm
roberto@montbazin.com
mention obligatoire
utilisation et distribution non-commerciale libre
prevenir l'auteur d'eventuels developpements futurs
*/
$x_data = "";
$name = var_init('id');
$user = var_init('pw');
$chk = var_init('chk');
$vsp = "<p> </p>";
print <<<FORM
$vsp $vsp $vsp
<table border='0'><td width='200'></td><td width='450'>
<h3>Crétion des fichiers .htaccess et .htpasswd</h3><p>
<form action = 'access.php' method = 'post'>
<input type = 'text' name = 'id' value = '$name'> Identifiant <p />
<input type = 'text' name = 'pw' value = '$user'> Mot de passe <p />
<input type = 'hidden' name = 'chk' value = 'ok'>
<input type = 'submit' value = 'Activer'></form>
FORM;
if($chk == "ok"){
$pass = crypt($user, base64_encode($user));
$x_data = "$name:$pass";
echo "<hr />ID : $name<br />";
echo "PW : $user<p />";
echo "<p />htpasswd : $x_data<p />";
}
else {echo "<p />Saissez vos identifiants<p />"; exit();}
write_pass($x_data,".htpasswd");
///////////////////////////////////////////////////////////////
$thisname = "Seuement utilisateurs autorises";
$path = getcwd();
echo "Path : $path<hr />";
$y_data = "AuthName \"$thisname\"
AuthType Basic
AuthUserFile \"$path/.htpasswd\"
Require valid-user";
write_pass($y_data,".htaccess");
echo "</td></table>";
echo "</body></html>";
///////////////////////////////////////////////////////////////
function write_pass($x_data,$fname){
@unlink($fname);
touch($fname);// create new file
$open=fopen($fname,"a");
if ($open)
{
fwrite ($open,"$x_data");
fclose ($open);}
}
function var_init($var){
if(!isset($_REQUEST[$var])){$_REQUEST[$var] = "";}
$var = $_REQUEST[$var];
$var = addslashes($var);
return $var;}
?>