protection fichier par php et fichier .htaccess - Programmation
Dans la même thématique :
Ceci répond-il à votre question ? Oui | Non
 

Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : protection fichier par php et fichier .htaccess
 
mais qui suis-je ?
Profil : IDNaute
Plus d'informations

Bonjour à tous :)

 

Je viens de créer un petit site où je mets des photos et vidéos.
Il n'y a qu'une seule page php, un dossier datas qui contient les images et videos.

 

Pour accéder à la page, il faut remplir un formulaire, identfiant et mot de passe. Si les deux sont correctes, j'affiche les images et vidéos toujours sur la page php.

 

Mais là n'est pas le problème du php, mon script fontionne très bien pour le mot de passe. Mais rien qu'avec cette protection, on peux directement taper l'adresse allant aux fichiers "datas" contenant les images et videos et accéder aux fichiers.

 

Donc ma protection ne protége pas le dossier ftp, mais juste l'affiche de la page php.

 

J'ai donc utiliser les fichiers .htaccess et .htpasswd.
Ca fontcionne parfaitement, on ne plus accéder aux fichiers "datas".

 

Mais là ya un problème de fonctionnalité, je suis obligé maintenant de mettre deux fois l'identifiant et le mot de passe (une fois pour le script php, et une deuxiéme quand j'affiche les images issues de "datas" ).

 

Comment protéger l'accès au dossier "datas", juste en mettant qu'une seule fois le mot de passe... en gros n'avoir que la demande d'authentification de mon script php et non celui de .htaccess et .htpasswd ?

 

Désolé pour la longueur de ma demande  :whistle:

 

Merci pour vos réponses.


Message édité par alexis10 le 12-05-2008 à 20:32:11

---------------
on a pas le temps de tout faire, mais des choses à faire tout le temps (voila le fruit de 3 heures de philo...vive la philosophie)
Liens

mais qui suis-je ?
Profil : IDNaute
Plus d'informations

En gros, ce que je veux savoir c'est si on peux faire ça et comment:
lorsque j'affiche les images et vidéos, j'indique l'identifiant et le mot de passe au module d'identification qui apparait par les fichiers .htaccess et .htpasswd ?


---------------
on a pas le temps de tout faire, mais des choses à faire tout le temps (voila le fruit de 3 heures de philo...vive la philosophie)
BigDefender
Profil : IDNaute
Plus d'informations

Salut, utilises les sessions en PHP, ça te simplifiera tous et plus besoin de .htaccess


Message édité par -Cart- le 13-05-2008 à 16:30:22

---------------
France/Nlle-Zélande 2007
mais qui suis-je ?
Profil : IDNaute
Plus d'informations

Merci pour ta réponse...
Oui, c'est vrai, je connais l'utilisation des sessions et ç peux être une bonne idée.
 
Mais imaginons que quelqu'un qui n'as pas de mot de passe ni d'identifiant, mais connait l'adresse du dossier où se trouve les images que ma page php affiche, à savoir "http://site/datas/image.jpg"... et bien dans ce cas, le gars en question pourra accéder au fichier image.jpg directement sur le serveur ftp.
 
je ne sais pas trop quoi faire à vrai dire, a moins qu'on me dise que mon problème est commun à tous les sites, ou en gros, si on me dit, qu'on peux accéder directement à des fichiers si on connait précisément l'adresse. Mais là je pense que c'est faux.
 
voici mon code pour ma page unique:
 
<?php
$users_allowed=array('user');
if(isset($_POST['id']))
{
 $identifiant=$_POST['id'];
}
else
{
 $identifiant="";
}
if(isset($_POST['mdp']))
{
 $mot_de_passe=$_POST['mdp'];
}
else
{
 $mot_de_passe="";
}
 
if(in_array($identifiant, $users_allowed) AND $mot_de_passe=="password" )
{
 ?>
 <!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>Private Page Unlocked v1.0</title>
 </head>
 
 <body>
 <h3 align="center">Blablabla/h3>
 <hr/>  
 
 *********CONTENU DE MA PAGE *************
 <img src="datas/image.jpg">
 
 </body>
 </html>
 <?php
}
else
{
 ?>
 <!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>Private Page Locked</title>
 </head>
 
 <body>
 <div align="center">
 <form action="index.php" method="post">
 <table border="0" align="center">
 <tr>
  <td align="right">Identifiant: </td><td align="left"><input name="id" type="text" size="10" maxlength="10"></td>
 </tr>
 <tr>
  <td align="right">Mot de passe: </td><td align="left"><input name="mdp" type="password" size="20"></td>
 </tr>
 </table>
 <input type="submit" value="Accéder à la page">
 </form>  
 </div>
 </body>
 </html>
 <?php
}
?>


Message édité par alexis10 le 13-05-2008 à 18:35:30

---------------
on a pas le temps de tout faire, mais des choses à faire tout le temps (voila le fruit de 3 heures de philo...vive la philosophie)
Si t'as pas d'raison d'vivre, trouve une raison de
Profil : IDNaute
Plus d'informations

Tu fais un ptit script de login qui démarre une session si le pseudo et le mot de passe sont correct! ensuite sur la page que tu veux protéger tu fais:
 
<?php
 
session_start();
 
if($_SESSION['connect'] != true) {
 echo "Pour accéder à cette zone vous devez vous connectez";
exit;
}
 
?>
 
Puis le reste de ta page...


Message édité par allstar27 le 13-05-2008 à 18:33:27

---------------
Prout <= Un petit clic par jour sur la bannière du bas de ce site me rapporte quelques petits centimes...
mais qui suis-je ?
Profil : IDNaute
Plus d'informations

en gros c'est pas ma page que je veux protéger, mais mes fichiers sur mon serveur ftp. L'accès à ma page est restreinte, ya pas de problème de ce point de vue là je pense.


---------------
on a pas le temps de tout faire, mais des choses à faire tout le temps (voila le fruit de 3 heures de philo...vive la philosophie)
mais qui suis-je ?
Profil : IDNaute
Plus d'informations

:hello: bon, j'ai attendu suffisamment longtemps, je peux continuer ce topic
donc mon problème persiste. Je sais, il y a déjà un topic sur le même sujet ici: http://www.infos-du-net.com/forum/ [...] e-htaccess

 

mais le gars est parti sans donner la réponse. :(

 

Donc je repose ma demande:
sur mon serveur, j'ai un repertoir /test. Dans ce répertoire, j'ai une page php welcome.php. Cette page php affiche une image yoda.jpg, qui se trouve dans le repertoire /test/image.

 

-> en utilisant les fichiers .htaccess et .htpasswd pour protéger le dossier /test , ma page welcome.php commence à s'afficher, mais dès que l'image yoda.jpg doit être chargé, le fichier .htaccess fait son effet et me demande un identifiant et un mot de passe.

 

Question:
comment faire, pour juste protéger l'accès à un répertoire tout en ayant la possibilité d'afficher les éléments via une page web. Je veux protéger le dossier /test et /test/image , mais pouvoir afficher toutes les pages php et html convenablements, sans avoir à mettre de mot de passe.
En gros, protéger l'accès ! Comme sur tous les sites.

 

A noter que l'utilisation de $_SESSION est un très bonen idée, très pratique, que je mets tout le temps en oeuvre. Mais, ahahah, ça ne change rien à la protection. On protége juste les pages dans ce cas. Bien sur, si le gars n'as pas ouvert de session, il ne peux pas savoir que mes images soient dans /test/image puisque sans une session, la page ne s'affichera pas, et donc le code source ne contiendra pas de lien vers des repertoires du serveur... je sais tout ça.... c'est vrai que ma demande est un peu bizarre. Néanmoins, si un gogo essaie de mettre juste /test/image, bah il va tomber dans le repertoire et va voir toutes mes images, l'utilisation de $_SESSION ne servira pas à stopper ça.

 

Merci pour vos futures réponses...  :)


Message édité par alexis10 le 27-05-2008 à 22:17:03

---------------
on a pas le temps de tout faire, mais des choses à faire tout le temps (voila le fruit de 3 heures de philo...vive la philosophie)

Aller à :
Ajouter une réponse
  FORUM Infos-du-Net » Programmation » protection fichier par php et fichier .htaccess
 

Liens