Disable Hotlinking
Jul 5, 2008 Diverse
Cum probabil am mai spus şi cu alte ocazii nu am nimic împotrivă ca articolele mele să fie preluate cu menţionarea sursei, bineînţeles. Dacă va ajuta pe cineva ceea ce scriu înseamnă că acest blog nu există chiar degeaba şi că nu sunt bun doar ca exemplu negativ. Dar, dacă e ceva ce nu suport, e un copy/paste nesimţit, fără menţionarea sursei şi eventual şi cu preluarea imaginilor de pe serverul meu. Hotlinking is bad, I tell you! Do not believe me? Look here and here then!
După ce vă veţi fi amuzat suficient citind cele două siteuri de mai sus, să explicăm cum putem interzice hotlinking pentru imaginile noastre şi cum putem înlocui, în cazul în care totuşi se întâmplă, imaginea originală. Nu e nicio magie, e doar un pic de .htaccess tweak. În fişierul .htaccess am adăugat următoarele linii de cod.
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://www([^.]+\.)?peugen\.net/ [NC]
RewriteCond %{HTTP_REFERER} !^http://([^.]+\.)?peugen\.net/ [NC]
RewriteCond %{HTTP_USER_AGENT} !(googlebot-image|msnbot|psbot|yahoo-mmcrawler) [NC]
RewriteCond %{HTTP_REFERER} !^http://www.feedburner.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://feeds.feedburner.com/peugen$ [NC]
RewriteCond %{REQUEST_URI} !^/no\.jpg$
RewriteRule \.(bmp|gif|jpe?g|png)$ /no.jpg [L]
Pare complicat, nu? Nici pe departe! Să explicăm ce face fiecare linie de cod şi cum trebuie să adaptezi codul pentru blogul tău.
Mai întâi definim URL pentru siteurile ce vor avea putea afişa imaginile de pe blogul nostru. Includem www şi non-www, doar ca să fim siguri, precum şi eventualele subdomenii.
RewriteCond %{HTTP_REFERER} !^http://www([^.]+\.)?peugen\.net/ [NC]
RewriteCond %{HTTP_REFERER} !^http://([^.]+\.)?peugen\.net/ [NC]
Imaginile indexate de motoarele pot fi o sursă destul de consistentă de trafic de aceea vom permite acestora accesul.
RewriteCond %{HTTP_USER_AGENT} !(googlebot-image|msnbot|psbot|yahoo-mmcrawler) [NC]
Să nu uităm de FeedBurner pe care mare parte dintre noi îl folosim, atât feedburner.com, cât şi feedul republicat al blogului nostru.
RewriteCond %{HTTP_REFERER} !^http://www.feedburner.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://feeds.feedburner.com/peugen$ [NC]
Pâna la momentul acesta dacă un site va folosi direct imaginile de pe blogul nostru acestea nu se vor afişa pur şi simplu. Aţi putea spune că ne-am realizat scopul, nu? Dar am putea să ne distrăm şi noi! :Eugen’s evil laugh: Creaţi o imagine pe care aţi dori să o afişaţi în locul celei originale şi uploadaţi imaginea respectivă în public_html, reţineţi denumirea acelei imagini! Imaginea mea se numeşte no.jpg, deci voi modifica în consecinţă. Dacă sunteţi curioşi o puteţi vizualiza aici. I’m a bad person, so they tell me!
RewriteCond %{REQUEST_URI} !^/no\.jpg$
RewriteRule \.(bmp|gif|jpe?g|png)$ /no.jpg [L]
Acestea au fost toate modificările necesare, acum puteţi introduce codul în fişierul vostru .htaccess. Have fun and stay safe, people!
Poate te mai intereseaza:
- Afiseaza subscriberii prin Feedburner - varianta imbunatatita
- Afişează numărul abonaţilor la feed prin Feedburner
- Cum să redirectezi feed RSS spre Feedburner
- Wordpress 2.6 easter egg
Tags: .htaccess, disable hotlinking, hotlinking





July 31st, 2008 at 21:31
În sfârșit mi-a ieșit și mie cu hotlinkul ăsta.
Bun articolul pt. cei mai puțin dornici de adâncit în tainele htaccess.
October 21st, 2008 at 15:39
am gasit si eu un tampit care a pus o poza de la mine si nici macar nu a pus link catre articolul meu sau ceva… in fine. idiots…
Thanks Eugen - voi testa asta seara mai mult ca sigur
Ultimul articol scris de Cristian Ciofu:dupa SdC #7
October 21st, 2008 at 15:54
ps: http://peugen.net/no.jpg is not working :))
Ultimul articol scris de Cristian Ciofu:dupa SdC #7