HTTP Referer


webmasterlamogere
WRInaute passionné
WRInaute passionné
 
Messages: 1874
Inscription: 17 Déc 2006

Message le Mar Juil 29, 2008 10:31

il y a une compilation de solutions php/htaccess ici : -http://www.urlrewriting.fr/scripts-Anti+vol-Snipet.html

Antoine.B
WRInaute discret
WRInaute discret
 
Messages: 133
Inscription: 8 Avr 2006

Message le Mar Juil 29, 2008 10:37

Merci pour le lien c'est pas mal mais,

Code: Tout sélectionner
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?monsite.fr [NC]
RewriteCond %{HTTP_REFERER} !^http://(www.)?google. [NC]
RewriteRule (.*).(gif|png|jpg|jpeg)$ /traite_voleur.php?fichier=$1.$2&extension=$2 [L] 


Ce baser sur le HTTP_REFERER pour verifier si l'image n'est affichee ni sur google, ni sur mon site, et ensuite prendre les precautions necessaire, c'est quand meme hasardeux !

Imaginons qu'un visiteur se balade sur mon site en ayant desactive les referers, les precautions antivol s'effectuent quand meme.


ltressens
WRInaute impliqué
WRInaute impliqué
 
Messages: 551
Inscription: 2 Avr 2004

Message le Mar Juil 29, 2008 10:52

Il existe une technique qui consiste à écrire l'url de son image avec un paramètre (technique pourrie pour le référencement j'en conviens) et d'avoir une regle de checksum qui se base par exemple sur le nom de l'image et l'heure courante qu'un site tiers ne saura reproduire.
Ensuite notre serveur ne sert que les images avec checksum correct.

Dans dans les pages générées par mon serveur j'ai un truc du genre :
<img src="/images/nepasvoler.jpg?checksum=1c453ab7">

Et le serveur lorsqu'il doit servir une image le fait par un script (en reecrivant toutes les urls qui commencent par /images/ vers un script php par exemple) qui verifie que le checksum est ok.

Ainsi seules les pages servies par notre serveur peuvent inclure nos images.

Et ce sans utiliser HTTP_REFERER


webmasterlamogere
WRInaute passionné
WRInaute passionné
 
Messages: 1874
Inscription: 17 Déc 2006

Message le Mar Juil 29, 2008 10:54

ce script permet de recevoir un mail si le referer n'est pas vide et si il est différent de monsite.fr ou google. la liste des exceptions doit être complétée au fur et a mesure des mails. j'ai modifié pour ajouter images.google.* :
Code: Tout sélectionner
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?monsite\.fr [NC]
RewriteCond %{HTTP_REFERER} !^http://(images\.|www\.)?google\. [NC]
RewriteRule (.*).(gif|png|jpg|jpeg)$ /traite_voleur.php?fichier=$1.$2&extension=$2 [L]


seebz
WRInaute impliqué
WRInaute impliqué
 
Messages: 808
Inscription: 15 Avr 2007

Message le Mar Juil 29, 2008 11:03

Etrange que personne n'ai pensé aux sessions :/

Bien sur, ca nécessite que l'image soit envoyé à travers un script php mais ca me semblerai moins hasardeux que le referer...

Antoine.B
WRInaute discret
WRInaute discret
 
Messages: 133
Inscription: 8 Avr 2006

Message le Mar Juil 29, 2008 11:07

ltressens a écrit:Il existe une technique qui consiste à écrire l'url de son image avec un paramètre (technique pourrie pour le référencement j'en conviens) et d'avoir une regle de checksum qui se base par exemple sur le nom de l'image et l'heure courante qu'un site tiers ne saura reproduire.
Ensuite notre serveur ne sert que les images avec checksum correct.

Dans dans les pages générées par mon serveur j'ai un truc du genre :
<img src="/images/nepasvoler.jpg?checksum=1c453ab7">

Et le serveur lorsqu'il doit servir une image le fait par un script (en reecrivant toutes les urls qui commencent par /images/ vers un script php par exemple) qui verifie que le checksum est ok.

Ainsi seules les pages servies par notre serveur peuvent inclure nos images.

Et ce sans utiliser HTTP_REFERER



seebz a écrit:Etrange que personne n'ai pensé aux sessions :/

Bien sur, ca nécessite que l'image soit envoyé à travers un script php mais ca me semblerai moins hasardeux que le referer...



Bien vu ! idees interessantes, merci


Bool
WRInaute passionné
WRInaute passionné
 
Messages: 1290
Inscription: 26 Fév 2004

Message le Mar Juil 29, 2008 11:09

seebz : pas bête. Il suffirait ainsi de simplement tester la présence du cookie de session (ou d'un autre cookie d'ailleurs) ; ce qui me semble suffisant.
Ca peut d'ailleurs simplement se faire via .htaccess je pense.

Mais même chose : certains internautes bloques les cookies, et n'auraient ainsi jamais accès aux images en question.
(et le session "trans_sid", ça pue :P)


seebz
WRInaute impliqué
WRInaute impliqué
 
Messages: 808
Inscription: 15 Avr 2007

Message le Mar Juil 29, 2008 11:24

Bool a écrit:Mais même chose : certains internautes bloques les cookies, et n'auraient ainsi jamais accès aux images en question.


j'y avais pensé mais j'aurais tendance à penser que la proportion est moins importante que le referer bloqué.
de plus j'image que ces utilisateurs doivent être régulièrement confrontés à des problèmes de navigation (plus que ceux qui ont un firewall bloquant le referer)


Bool
WRInaute passionné
WRInaute passionné
 
Messages: 1290
Inscription: 26 Fév 2004

Message le Mar Juil 29, 2008 12:06

J'utiliserais bien un mixte des deux en fait : se baser sur le referer, et lorsque celui est faux (j'ai bien dit "faux", pas "absent") vérifier la présence du cookie.

Ainsi peu d'utilisateurs devraient être bloquées, et les robots pourront également indexer le contenu.


Leonick
WRInaute accro
WRInaute accro
 
Messages: 19595
Inscription: 8 Aoû 2004

Message le Mer Juil 30, 2008 9:51

ltressens a écrit:et d'avoir une regle de checksum qui se base par exemple sur le nom de l'image et l'heure courante qu'un site tiers ne saura reproduire.
Ensuite notre serveur ne sert que les images avec checksum correct.
donc les pages en cache dans les SERP n'afficheraient pas les images. Pas glop avec gg, live et y! images. Ca fait perdre des visiteurs

HTTP Referer

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

  • Analyse de l'entête HTTP
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
  • Tester le type de redirection
    Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs).


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités