Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1719 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  htaccess:cmt empecher d'afficher 1 image par chemin complet dans URL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

htaccess:cmt empecher d'afficher 1 image par chemin complet dans URL

n°1676923
tintin34
Posté le 25-01-2008 à 18:45:11  profilanswer
 

bonjour,
 
Mon probleme surement tres classique est le suivant:
 
j'ai pour un site web un sous dossier [i]images contenant des images (extension que vous voulez, gif par exemple)
a la racine, des pages html, chacune contiennent des balises <IMG> appelant les fichiers adaptés dans le sous dossier qui contient les images
 
je suis conscient qu'une fois une page html affichée chez le client, l'image est dans son cache
 
Je voudrais que mes pages html s'affichent normalement avec les images
Mais si une personne tappe dans son URL directement une URL du genre
 
http://www.monsite.fr/images/nom_image.gif
 
que l'image ne s'affiche pas sur son ecran
 
à la place soit:
-redirigé sur page d'accueil de mon site
-affichage d'une page erreur
- ou autre chose (qui ne soit pas l'affichage de nom_image.gif)
 
ou si vous préférez l'image s'affiche parce que le visiteur a suivi les liens et l'enchainement de mes pages html qui permettent l'affichage de cette image
 
 
J'ai lu beaucoup de choses, entre autre sur le mod rewrite de htaccess, des forums des tutoriels, le manuel Apache.... j'ai aussi fait beaucoup de tests différents avec un .htaccess et rien ne fait ce que je veux
 
 
Est ce que mon problème est réalisable?
si oui avec un .htaccess?
je suppose que il se placerait à la racine? ou bien dans le sous dossier image? ou en faut il deux peut etre?
 
 
ci apres celui que j'ai ecrit a titre indicatif qui ne fonctionne pas trop bien (mais de ce que j'ai compris recement, il ne bloquerait que les pages d'un autre site de faire des liens sur mes fichiers, c'est bien, mais c'est pas exactment ce que je voudrais)
 
Options -Indexes
RewriteEngine On  
RewriteCond %{HTTP_REFERER} !^$  
RewriteCond %{HTTP_REFERER} !^http://www.monsite.fr/.*$ [NC]
RewriteRule .*\.(gif|JPG|png|jpe?g)$ http://www.monsite.fr [R,L]

mood
Publicité
Posté le 25-01-2008 à 18:45:11  profilanswer
 

n°1678537
tintin34
Posté le 29-01-2008 à 15:23:30  profilanswer
 

up!

n°1678961
tintin34
Posté le 30-01-2008 à 11:52:46  profilanswer
 

up!

n°1680049
tintin34
Posté le 31-01-2008 à 19:04:14  profilanswer
 

up!

n°1690805
tintin34
Posté le 22-02-2008 à 16:02:30  profilanswer
 

Est ce que mon probleme est insolvable?
 
Est ce que on peut pas le traiter avec un .htaccess?
 
Personne n'a idée? je pensais que c'etait un probleme tres courrant et assez classique qui se pose assez vite lorsqu'on met en place un site
 
Personne n'a jamais eu ce probleme a résoudre?

n°1690815
FlorentG
Unité de Masse
Posté le 22-02-2008 à 16:08:37  profilanswer
 

On peut interdire l'affichage d'images assez simplement en fonction de se qu'il y a dans le referer.
 
Mais comme le referer n'est pas très fiable, vaut mieux autoriser un referer vide. C'est ce qui se passe quand on tape l'image dans la barre d'adresse, le navigateur envoie un referer vide.
 
Ce que t'essaye de faire donc risque de poser beaucoups de problèmes, pour pas grand interêt au final. Quel est le réel problème ?

n°1690929
tintin34
Posté le 22-02-2008 à 17:59:30  profilanswer
 

le problème réel est le suivant
 
les images, photos, logo ect... sont organisés et rangés dans une sous arborescence de la racine sur laquelle pointe la page d'accueil
 
l'une des pages annexes du site sert d'outil de travail pour un nombre restreint de personnes qui par se biais répètent leurs chanson qu'ils chantent ensuite ensemble en privé
 
Ces personnes ne composent pas ils reprennent des textes et musiques non libre de droit, tant que c'est sans remunération et dans un lieu privé la loi le leur permet, et ils utilisent des partitions qu'ils ont achetées et qu'ils utilisent pour leur usage personnel
 
Ces partitions, pour apparaitre sur le site dans la page qui leur est reservée sont scannées et son informatiquement parlant des images
 
MAIS Internet est et est considéré comme un espace publique même si l'url n'est pas diffusée qu'à un cercle restreint
 
Pour rester conforme avec ce que la loi permet j'ai mis en place en amont de cette page en php et mysql une authentification par mot de passe.  
 
Par contre en connaissant l'arborescence, on peut directement mettre le nom du fichier dans l'urlet accéder aux dites partition par exemple en ayant contourné l'authentification par mot de passe
 
c'est le probleme d'origine que je souhaite finalement généraliser si on sait faire a l'ensemble des images utiliser sur le site, non pas pour empecher quelqu'un de la prendre puisqu'elles se chargent en cache c'est impossible a bloquer mais pour au moins restreindre l'acces aux seuls passages sur les pages html et php qui les utlisent
 
pour ce qui concerne plus particulierement les partitions elles apparraissent dans des pages qui leurs sont propres en sur impression de la page d'appel (sorte de pop up si on veut), un solution serait de transmettre la clée d'authentification générée a toutes les pages mais ca me complique le travail, j'aurrais souhaiter de rien changer au code et juste interdire l'acces au sous dossier qui continent les dites images lorsqu'on inscrit direct dans l'url le nom du fichier et son chemin
 
 
 
j'ai mis plus haut le htaccess que j'avais commencé, quelle ligne faudrait rajouter pour un HTTP_REFERER vide comme tu me parles?

n°1691489
FlorentG
Unité de Masse
Posté le 24-02-2008 à 13:23:40  profilanswer
 

Le problème est différent.

 

Il faut que tous les fichiers ne soient pas téléchargeables directement, mais doivent passer par un script PHP.

 

Genre t'as un fichier /pouet/mp3/bidule.mp3

 

T'interdit tout accès au dossier /pouet/mp3. Ensuite tu fait un script genre "fichier.php" qui prend en paramètre un fichier à ouvrir, genre "fichier.php?fichier=/pouet/mp3/bidule.mp3".

 

Dans ce fichier, tu peux alors tester si l'utilisateur est connecté. Ensuite tu envoi le fichier, à ce niveau là l'interdiction du dossier ne s'applique pas.

 

C'est le seul moyen de faire ce que tu veux de manière fiable : autoriser le téléchargement de fichiers que pour les utilisateurs connectés, il faut donc bypasser Apache et faire ça à la main en PHP


Message édité par FlorentG le 24-02-2008 à 13:23:52
n°1691504
tintin34
Posté le 24-02-2008 à 14:28:52  profilanswer
 

j'ai fait ce script fichier.php qui verifie si l'utilisateur est passé par l'authentification
 
une clé est générée elle est passée en parmetre des différentes pages qui peuvent etre accessible que par authentification
 
ce script est mis en debut de chaque page.php
 
en effet je peux le rajouter sur chacune des pages qui affiche une image partition (idem pour les autres ressources, mp3....) mais justement je voulais eviter d'avoir a faire ca et tester le referer dans un htaccess
 
De de ce que je comprends de ta réponse,je vais pas y échaper
 
quel est le probleme avec la fiabilité du http_referer?
est ce que c'est que ca réagit pas de la meme facon suivant les navigateurs?

n°1691508
FlorentG
Unité de Masse
Posté le 24-02-2008 à 14:40:16  profilanswer
 

Le referer peut être vide, mais aussi modifié à la main sans problème. Donc quelqu'un qui voudrait récupérer les fichiers peut le faire sans grande difficulté.

mood
Publicité
Posté le 24-02-2008 à 14:40:16  profilanswer
 

n°1691514
tintin34
Posté le 24-02-2008 à 15:03:52  profilanswer
 

OK je comprends qu'on puisse le modifier et leurrer le systeme
 
mais cette condition que j'avais mis dans mon htaccess
 
RewriteCond %{HTTP_REFERER} !^$
 
ne testait t'elle pas justement un referer vide?
 
meme sans essayer de tromper le truc ca avait pas l'air de fonctionner
le htaccess que j'avais ecrit

n°1694732
tintin34
Posté le 28-02-2008 à 21:32:38  profilanswer
 

tintin34 a écrit :

RewriteCond %{HTTP_REFERER} !^$
 
ne testait t'elle pas justement un referer vide?


 
Sans essayer de tromper les règles du fichier htaccess, pourquoi les règles que j'avais écrit ne fonctionnent elles pas? comment en fait faudrait il réécrire ces règles pour que ca bloque dans les conditions d'utulisations "normales" (sans essayer de modifier le referer en douce pour tromper le truc)

n°1696354
tintin34
Posté le 03-03-2008 à 15:28:55  profilanswer
 

up!

n°1697847
tintin34
Posté le 05-03-2008 à 20:07:03  profilanswer
 

MED365
 
je viens de trouver dans ma boite aux lettres une notification comme quoi tu avais participé a ce sujet, le 26/02 , mais le message ne s'est pas affiché, je n'ai donc jamais pu le lire


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  htaccess:cmt empecher d'afficher 1 image par chemin complet dans URL

 

Sujets relatifs
Problème pour adapter la taille d'une image à la cellule d'un tableauconfiguration de httpd.conf pour .htaccess
[resolu]image dynamique en phpj'ai petit mistère avec un htaccess
[resolu]Ouverture image à l'aide de javascriptPB affichage des image dans un mail html
LoadDib => charger une image en 24 bits ?Génération image crypto
Problème insertion de video youtube sur image.pb afficher/masquer les calques
Plus de sujets relatifs à : htaccess:cmt empecher d'afficher 1 image par chemin complet dans URL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR