Stop Hotlinking by .htaccess (How to setup Hotlink Protection in .htaccess)

Hotlinking” sau cunoscuta si sub numele de leeching, piggy-backing, direct linking, offsite image grabs este o metoda prin care o pagina web preia imaginile din altei pagini web. Cu cat sunt mai mari imaginile si vizitele mai multe pe site-ul care a preluat imaginile, cu atat se face mai mult trafic si se consuma mai multa banda (Bandwidth) pe serverul sursa. Bineinteles, acest lucru nu este valabil numai pentru imagini. Se pot prelua fisiere .mp3, fisiere video si chiar arhive. In aceste ultime trei situatii consumul de banda ar fi mult mai mare si ar aduce automat costuri in plus pentru serverul gazda.

Cum putem bloca alte site-uri sa preia imaginile din sursa noastra?

Sa facem urmatorul scenariu. Avem stealthsettings.com gazda pentru imagini si nu dorim ca imaginile sa poata fi preluate pe o alta pagina web din afara domeniului stealthsetting.com. In acest caz vom face urmatoarele.

1. Se adauga un fisier .htaccess in webroot-ul site-ului pe care sunt gazduite imaginile.

2. In .htaccess se adauga urmatoarele linii.

RewriteEngine On
RewriteCond %{HTTP_REFERER} !http://(.+.)?stealthsettings.com/ [NC] RewriteCond %{HTTP_REFERER} !^$
RewriteRule .*.(jpe?g|gif|bmp|png)$ http://laurentiu.us/oops.gif [L]

Asta inseamna ca fisierele de cu extensiile .jpg, .jpeg, .gif, .bmp si .png nu pot fi preluate cu link direct din sursa  stealthsettings.com, iar site-ul care va prelua imaginile va afisa imaginea oops.gif hostata la laurentiu.us.

Iata si un caz real. Un “blog de IT” s-a gandit sa ajute oamenii nestiutori furand tutorialele de la noi. Cu surse cu tot. Liniile adaugate de noi in .htaccess au avut urmatorul efect pe site-ul care a preluat imaginile:

Nu Stii - Te invatam noi

Cum putem bloca anumite site-uri sa preia imagini.

Pot fi si alte situatii in care sa dorim sa permitem preluarea imaginilor de alte site-uri, cu exceptia unora.

RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://(.+.)?facebook.com/ [NC,OR] RewriteCond %{HTTP_REFERER} ^http://(.+.)?hi5.com/ [NC,OR] RewriteCond %{HTTP_REFERER} ^http://(.+.)?softpedia.com/ [NC] RewriteRule .*.(jpe?g|gif|bmp|png)$ http://laurentiu.us/oops.gif [L]

In situatia de mai sus toate site-urile pot prelua imagini de pe stealthsettings.com (sau de pe site-ul pentru care editam .htaccess) cu exceptia domeniilor si subdomeniilor de la facebook.com, hi5.com si softpedia.com. Imaginile preluate de aceste trei domenii vor fi redirectionate catre laurentiu.us/oops.gif.

*Specificam ca pentru a folosi -ul modulul mod_rewrite trebuie sa fie prezent in apache webserver.

Stop Hotlinking by .htaccess (How to setup Hotlink Protection in .htaccess)

About the author

Stealth L.P.

Fondator si editor Stealth Settings, din 2006 pana in prezent.
Experienta pe sistemele de operare Linux (in special CentOS), Mac OS X , Windows XP > Windows 10 si WordPress (CMS).

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.