10
06
2009

Se protéger du Hot Linking

Le problème de publier des images intéressantes, c'est que vous risquez d'avoir d'autres personnes qui les affichent sur leur site, mais en laissant l'image sur votre serveur.

Le problème est qu'ayant l'image hébergée sur votre machine, c'est votre débit qui sera utilisé. Si l'autre site possède un important trafic, il peux tuer votre disponibilité ou en tout cas la ralentir.

Afin d'éviter que les images ne soient affichées depuis un autre site, voici un petit bout de code à mettre dans un fichier .htacess :


RewriteEngine On
#Replace ?yoursite.com/ with your blog url
RewriteCond %{HTTP_REFERER} !^http://(.+.)?yoursite.com/ [NC]
RewriteCond %{HTTP_REFERER} !^$
#Replace /images/stealing-is-bad.jpg with your "don't hotlink" image url
RewriteRule .*.(jpe?g|gif|bmp|png)$ /images/stealing-is-bad.jpg [L]

Remplacez bien les valeurs indiquées par celle correspondant à votre configuration, et vous serez tranquilles :)

Source: http://www.pcland.info/archives/156/more-htaccess-tricks-for-you-wordpress-blog.html

Share/Save/Bookmark

6 Comments so far ...


  1. Screu

    Screu says:

    Jun. 10, 2009, 11:15 AM

    Moi perso je préfère vérifier à la main (google image ou autres) et si j'en trouve ... remplacer ces images par d'autres ... bien moins catholiques ... histoire de faire comprendre ;)
    Sinon, l'idée est bonne.

    Un autre problème est la copie d'images ... et pour ça c'est beaucoup plus dur de se protéger.

  2. semageek

    semageek says:

    Jun. 28, 2009, 02:02 PM

    Au cas ou ça vous intéresse, je viens de développer un plugin anti hotlinking pour Wordpress,
    http://wordpress.org/extend/plugins/pictpocket/
    @+

  3. Cyril

    Cyril N. says:

    Jun. 28, 2009, 03:05 PM

    Merci pour l'info @semageek :)

  4. stephanzr

    stephanzr says:

    Jul. 03, 2009, 09:38 AM

    Intéressant, et simple et facile à mettre en place! Par contre comment faire si on a besoin de permettre l'affichage (d'images hébergés sur notre serveur) sur d'autres sites?
    Par exemple j'ai une galerie photo et je veux fournir un code pour permettre aux visiteurs d'insérer l'image de leur choix sur leur blog, forum, site...

  5. Cyril

    Cyril N. says:

    Jul. 06, 2009, 11:04 AM

    Si tu connais les autres sites (genre ce son les tiens, donc que tu connais l'ip), tu peux faire un allow les-ip puis un deny all.
    Maintenant, si, comme tu dis, les images seront hébergées par des visiteurs, tu ne peux pas mettre en place ce type de code (celui que j'ai mis dans cet article), c'est en contradiction avec ton usage ;)

  6. semageek

    semageek says:

    Jul. 07, 2009, 12:12 AM

    @stephanzr

    Le plugin gère une partie autorisation,
    au début il fonctionne de manière transparente, les images s'affiche normalement sur les sites distants, il loggue juste les provenances.
    Dans ta console admin, tu voit alors apparaitre les différents sites distants, tu peut :
    * autoriser (tout le domaine sélectionné accèdera dorénavant au contenu de ton site et ne sera plus filtré par le plugin)
    * bloquer (l'image demandé est remplacé par une d'avertissement pour tout le domaine sélectionné)

Add a comment