IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

protection de fichiers avec affichage d'images


Sujet :

Apache

  1. #1
    Membre actif Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 707
    Points : 215
    Points
    215
    Par défaut protection de fichiers avec affichage d'images
    Bonjour,

    j'ai créé un site permettant à des clients de se connecter à leur espace. C'est espace est en fait un dossier dans lequel je mets 2 choses :
    - des images JPEG
    - des fichiers texte avec liens vers des vidéos youtube

    Lorsque le client est identifié, il voit la liste des documents dispo et peux cliquer sur un élément de la liste avec le résultat suivant :
    Si c'est une image, elle s'affichage sur l'écran
    Si c'est un fichier texte, la vidéo dont elle contient le lien est lue sur le site.

    Tout fonctionne bien, mais, bien entendu, je souhaite protéger mes répertoires par un htaccess afin qu'on ne puisse pas venir récupérer les documents sans être identifié.

    le htaccess fonctionne bien sauf que les images ne sont pas affichées sur le site. A la place il affiche l'icone de lien brisé.

    Voici ce que j'avais mis dans mon htaccess :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Order Deny, Allow 
    Deny from mondomaine.com
    Comment puis-je faire pour que les images soient également affichées malgré le htaccess ?

    Merci de votre aide !

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Tu veux dire quoi avec ton Deny from mondomaine.com ?

    Tu peux donner le .htaccess complet sinon ? En l'état, je ne comprends pas comment la protection peut fonctionner : tout devrait être accessible tout le temps.

    Pour info, il ne faut pas d'espace après la virgule dans la directive Order.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  3. #3
    Membre actif Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 707
    Points : 215
    Points
    215
    Par défaut
    En fait, je me suis planté, c'était Allow from mondomaine.com.

    j'ai fait d'autres tentatives, mais sans résultat. Les photos ne s'affichent toujours pas.

    Voici mon htaccess :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    ErrorDocument 403 http://www.mondomaine.com/
     
    Options -Indexes
     
    <FilesMatch "\.(txt|jpg|jpeg)$">
        Order allow,deny
        Deny from all
        Allow from www.mondomaine.com
        Satisfy All
    </FilesMatch>
    Le truc c'est que les images situées dans les autres répertoires (un niveau plus haut) s'affichent correctement ! Que n'ai-je pas compris ?

    Je précise que les documents sont affichés en Ajax. Une fonction JS appelle un script php qui luit renvoie le chemin du fichier à afficher et le JS l'afiche. Peut être cela a-t-il un lien...

    merci de ton aide !

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Y a un truc que je ne comprends pas : tu parles d'authentification dans ton premier message mais ton .htaccess ne contient rien en rapport avec une quelconque authentification. Est-ce que tu peux détailler encore un peu ton besoin par rapport à cette authentification ?

    Sinon, pour info, Allow from www.mondomaine.com autorise les clients (= les navigateurs) dont l'IP correspond au nom www.mondomaine.com. Clairement, ce n'est jamais le cas, d'où l'impossibilité de voir les images.

    Au final, j'ai l'impression que tu cherches à faire de la protection contre le hotlinking mais je ne suis pas bien sûr

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  5. #5
    Membre actif Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 707
    Points : 215
    Points
    215
    Par défaut
    Merci de ta réponse et désolé d'être aussi peu clair...

    En effet, l'authentification est "maison" et ne passe pas par le htaccess.

    Dans mon dossier clients, j'ai
    - Dossier_Client1
    - image1
    - image2
    - video1
    - video2
    - Dossier_Client2
    - image3
    - image4
    - video3
    - video4

    et mon but est déviter que Client1 n'accède directement à image3, image4, video3 et video4 (et réciproquement pour Client2) en saisissant directement l'url de ces fichiers dans son navigateur...

    Alors certes, client 1 ne connaîtra pas les urls directes d'accès aux fichiers, mais pour éviter le crawl par robot, je voudrais mettre en place cette impossibilité...

    Est-ce possible ?

    PS : merci pour l'info sur allow, je n'avais effectivement pas compris son fonctionnement

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Comme je disais, tente une protection du type hot linking :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <FilesMatch "\.(txt|jpg|jpeg)$">
        RewriteCond %{HTTP_REFERER} !/Dossier_Client1/
        RewriteRule .* - [F]
    </FilesMatch>
    A mettre dans le .htaccess de Dossier_Client1. Un truc identique pour les autres répertoires.
    Mais c'est une protection de façade, c'est contournable en forgeant les entêtes HTTP. L'idéal c'est de passer toutes les requêtes vers les images vers un script ou une "page" ou servlet (selon la techno de ton site) qui va vraiment vérifier l'authentification du visiteur et vraiment renvoyer le fichier demandé que si l'accès est autorisé.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

Discussions similaires

  1. Comment télécharger un fichier avec affichage du chargement?
    Par lunix546 dans le forum Windows Mobile
    Réponses: 12
    Dernier message: 23/01/2010, 21h54
  2. Affichage d'image avec API Win32
    Par Chess0 dans le forum Windows
    Réponses: 12
    Dernier message: 14/12/2005, 07h14
  3. PB affichage d'image avec IE
    Par arturo dans le forum Modules
    Réponses: 6
    Dernier message: 25/09/2003, 17h28
  4. [VB6] Affichage d'image avec qlq contraintes
    Par youri dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/11/2002, 14h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo