Le HotLinking est l’un des problèmes les plus agaçants que rencontrent les nouveaux webmasters. Si vous constatez que votre bande passante est largement utilisée alors que votre site web ne demande pas assez de ressources, il se peut que vous soyez victime du HotLinking ! Permettez-moi tout d’abord de vous définir ce que c’est que ce phénomène ; si votre site web contient des images, fichiers textes, documents, archives .zip, … et que quelqu’un publie un lien directe à l’un d’eux depuis son site web, sachez qu’il est entrain de voler votre bande passante ! Et que vous devez mettre un Anti-HotLinking !
Il existe des plugins, modules, hacks, … pour différents scripts ou CMS qui peuvent mettre fin au HotLinking, mais personnellement je préfère une méthode un peu plus compliquée mais efficace pour touts cas ! Cette méthode consiste à ajouter quelques lignes dans votre fichier .htaccess, ces lignes sont les suivants :
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domaine(/)?.*$ [NC]
RewriteRule .*\.(gif|jpe?g|png|bmp)$ [F,NC]
Vous trouvez que c'est du chinois ?! Pas pour longtemps ! Je vous explique :
La première ligne ordonne au serveur d’activer le mode « mod_rewrite ».
La deuxième ligne vérifie si le « referrer string » est vide.
La troisième montre au serveur quel domaine est autorisé à utiliser des liens directes vers vos documents (fichiers, images, archives, …), vous devez mettre votre domaine à la place du mot « domaine » bien évidemment. Au cas où vous voudriez autoriser plusieurs noms de domaine à utiliser ses liens, copiez-collez cette ligne pour chacun de vos domaines. Vous pouvez le faire tant de fois que vous voulez sans problèmes !
La quatrième ligne montre au serveur quels types de fichiers seront protégés contre le HotLinking. Modifiez ces types selon votre choix !
L’exemple que j’ai mis protège les fichiers ayant les extensions suivantes : gif, jpeg, jpg, png et bmp.
Il existe une autre option pour tirer profit, cette fois, du HotLinking. Et valable juste pour les images et consiste à afficher une seul image de votre choix pour lien non autorisé vers vos images !
Toutefois, cette seconde option ne vous permet pas de conserver votre bande passante car une image sera tout de même affichée ! Mais ca ne sera pas ce que le lécheur a voulu lécher !!!
Les lignes que vous faut ajouter cette fois çi sont les suivantes :
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domaine(/)?.*$ [NC]
RewriteRule \.(gif|jpe?g|png|bmp)$ /images/hotlinking.gif [L,NC]
Ces à peu près le même que son précédent, sauf que cette fois si il affichera une image du nom « hotlinking.gif » à la place de chaque image léchée. Cette image devra se trouver dans un dossier appelé « images » existant dans la racine de votre site.
Dans les deux exemples, vous devez remplacez domaine par votre vrai nom de domaine sans extension (.com, .net, .fr, …), juste le domaine !
0 Responses