14
janv. 08
Interdire le holinking d'images via Htaccess

Le hotlinking d'image consiste selon wikipédia
à utiliser l'adresse d'un fichier publié sur un site web, le plus souvent une image, pour l'afficher sur un autre site, sur un blog, dans un forum, etc. En d'autres termes, au lieu d'enregistrer l'image et de l'installer sur son propre serveur web, le hotlinkeur crée un lien direct vers le serveur d'origine.
En gros les personnes qui use du hotlinking font de l'économie de bande passante sur leur serveur mais utilisent celle du serveur où se situe l'image d'origine. En plus cela peut ralentir fortement le site situé sur le serveur d'origine de l'image hotlinkée
[apache]
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?monblog.fr(/)?.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mondeuxiemeblog.fr(/)?.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?google.com/reader(/)?.*$ [NC]
RewriteRule \.(gif|jpe?g|png|bmp)$ /antihotlink.jpe [L,NC]
Explication de texte :
- on démarre le moteur de réécriture des liens
- on interdit à toutes les sites
- sauf pour monblog.fr, mondeuxiemeblog.fr et google reader
- de hotlinker les images de type gif, jpg, jpeg, png, bmp et on affiche une image à la place de l'image voulue en disant que c'est pas bien de faire du hotlinking

Il vous faudra adapter ce code à vos envies :
- autoriser netvibes à afficher les images
- ne pas afficher d'image de remplacement, dans ce cas remplacez RewriteRule \.(gif|jpe?g|png|bmp)$ /antihotlink.jpe [L,NC] par RewriteRule \.(gif|jpe?g|png|bmp)$ - [F]
Voilà vous allez faire des économies de bande passante 






















Commentaires
Séverin
14/01/2008 - 10:04
J'ai aussi proposé sur Smashing coding une solution qui permet d'afficher l'image mais d'y ajouter automatiquement son tampon :
http://smashingcoding.com/2007/12/1...
Timothée
14/01/2008 - 10:18
Excellent !
Je suggérerai d'aller chercher l'image de remplacement sur un autre site que le sien...
skullpat
14/01/2008 - 12:10
Oui j'avais exactement le même problème et quelle économie réalisée en terme de bande passante
et pareil que Timothée, je conseille de mettre l'image de remplacement ailleurs
!! Je deli.icio.us ton billet néanmoins !!
Arkan
14/01/2008 - 18:40
Le seul soucis c'est que ça devient vite long à gérer si tu te dis que pour certains sites c'est plutôt un truc sympa d'afficher ton image (genre les aggrégateurs, certains diggs, ...) pour donner envie de venir voir chez toi. Ce sont surtout eux qui "pompent" ta BP vu le nombre de visites sur tes billets.
Bon pour le moment j'utilise que 50% de ma BP donc je me tracasse pas mais si j'ai de plus en plus de visite faudra p-e que je me décide à appliquer
Ps: Il n'y a pas une ligne pour interdire le hotlinking juste sur un site bien précis ?
Guillaume
14/01/2008 - 19:07
@ skullpat : haha justement je pensait à ton blog : plus moyen de voir tes images via netvibes maintenant... et souvent ça m,enlèeve l'envie de lire le texte
@ Guillaume Bizet : j'imagine qu'on peut faire la même chose avec les trucs flash en ajoutant swf dans la RewriteRule
Guillaume
14/01/2008 - 19:30
Oui c'est clair il faut pas mettre l'image de remplacement chez soi !!! Sur un espace genre free.fr
@Arkan et Guillaume : je suppose que c'est réalisable par contre je ne connais pas la syntaxe de la chose
spawnrider
14/01/2008 - 23:59
Faut éviter de bloquer les moteurs aussi

Bien vu le htaccess
fabien
15/01/2008 - 16:21
Salut Guillaume, Bien vu et bien utile tout ça !
Je l'ajoute dans ma "todo list"
merci
Gonzague
29/01/2008 - 19:19
Déjà essayé mais tu bloques du coup plein de lecteurs RSS et c'est trèèèèès chiant :/
netwizz
30/01/2008 - 02:18
Pour bloquer uniquement des sites bien précis
RewriteCond %{HTTP_REFERER} ^http://(www \.)?siteabloquer1\.com/ NC,ORRewriteCond %{HTTP_REFERER} ^http://(www \.)?siteabloquer2\.com/ NC,OR
RewriteRule \.(gif|jpe?g|png|bmp)$ /antihotlink.jpe L,NC
netwizz
30/01/2008 - 02:22
tiens!? la syntaxe wiki pour entrer du code ne marche pô, dommage
Guillaume
30/01/2008 - 08:56
@Gonzague : c'est vrai qu'il faut bien penser à ça. Mais si tu regardes les lecteurs RSS principaux via feedburner par exemple, en prenant "les plus connus" tels que google reader, netvibes, bloglines, newsgator, ... tu ne gène pas trop de personnes finalement.
@Netwizz : voilà commentaire corrigé. Je n'ai jamais compris pourquoi cela ne marchait pas. C'est d'ailleurs la mêle chose dans l'édition de billets
SM
27/02/2008 - 01:35
merci CERVANTES, tu m'a beaucoup aidé
benn
13/11/2009 - 15:43
Merci