sparh Posté 23 Septembre 2013 Posté 23 Septembre 2013 Bonjour, sur mon site j'upload pas mal de documents. Les documents sont placés dans un dossier par exemple : images/documents/fichier.pdf J'aurai aimé que les documents ne soient lisible/téléchargeables que pour les utilisateurs connectés (via une session PHP) au site. Le plus simple aurai été de bloquer l'accès à tel dossier si la session PHP n'existe pas mais ce n'est pas possible. La seule solution que j'ai trouvé pour l'instant c'est : dans le fichier htaccess : rediriger le dossier concerné (celui qui contient les documents à protéger) vers une page php qui vérifiera que la personne est connecté, si oui la page affiche le document : - htaccess --> RewriteRule images/(.*) check_connect.php?url=$1 [QSA,L,R=301] - check_connect.php --> verif_connexion(); $url = $_GET['url'] ; $adresse_fichier = 'images/'.$url ; $mime = mime_content_type($adresse_fichier) ; $fp = fopen($adresse_fichier, 'rb'); header("Content-Type: ".$mime); header("Content-Length: " . filesize($adresse_fichier)); fpassthru($fp); exit; Que pensez vous de cette solution ? Avez des idées d'amélioration ou carrément d'autres idées pour protéger mes documents ? Merci d'avance
BlackPage Posté 23 Septembre 2013 Posté 23 Septembre 2013 Salut ! Pourquoi tu chmod pas le dossier en question avec un 655 ( de mémoire ) ? Bon courage !
sparh Posté 24 Septembre 2013 Auteur Posté 24 Septembre 2013 Bonjour, car je souhaite que TOUS ceux qui ont un login valable puissent accéder aux documents et non pas seulement le propriétaire.
yuston Posté 24 Septembre 2013 Posté 24 Septembre 2013 Il faut jouer avec les headers comme le montre l'exemple #1. Donc suffit de poser les conditions de départ (visiteur ou utilisateur?) puis si la condition est vraie alors on envoie le header correspondant.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant