Hotlinking - або життя паразитів


Якщо до Вас темної ночі постукав ногами Ваш хостінг провайдер і попросив оплатити надлишковий трафік, значить пора боротись з паразитами, які завелись на вашому вебсайті 8))))Отже - hotlinking...
Описувати що це? Ну ок... Це використання Ваших вебресурсів іншими користувачами інтернету на своїх вебсторінках без Вашої згоди...
А по простому - сп**зділі.
Якщо Ваш вебсайт не дуже популярний - то загалом нічого особливого не станеться, якщо хтось колись використає фото з Вашого вебсайту один раз...
Але якщо у Вас багато таких фотографій і трафік, який генерується з "лівих" користувачів перевищує Ваш особистий - треба діяти, поки не пізно.

hotlinking disabled

Отож.
Мова йтиметься про apache + mod_rewrite

З допомогою .htaccess файлу можна зробити перенаправлення запитів до Ваших ресурсів, використовуючи метод REFERER


RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?ВАШ_ДОМЕН.com.ua [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?ДОМЕН_ДРУГА.com.ua [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://АДРЕСА_КАРТИНКИ_ПОПЕРЕДЖЕННЯ/off.jpg [NC,R,L]

Далі цей вміст закидуєте в файл .htaccess в директорію, в якій у Вас знаходяться захищені в майбутньому фото.
Як тільки "паразит" використає Вашу картинку, її адреса автоматично підміниться на http://АДРЕСА_КАРТИНКИ_ПОПЕРЕДЖЕННЯ/off.jpg в той час, як всі картинки, що будуть завантажені з Вашого вебсайту, або з вебсайту друга - відобразяться без проблем.

Кількість правил RewriteCond - може бути досить великою, хоча про ліміти варто пам'ятати - mod_rewrite - це додаткове навантаження на вебсервер Вашого провайдера, що може вилитись в сповільнене завантаження саме Ваших вебсторінок.

PS. Для особливо лінивих в інтернеті присутні готові сервіси для створення необхідного htaccess файлу. Для прикладу тут можна покроково створити свій власний htaccess файл

PPS. Приклад такого .htaccess файлу з цього сайту

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?etcetera.com.ua [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?ukrweb.info [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?podanenko.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?my.ukrweb.info [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?media-region.com.ua [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?kalush.net [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?kalush.ukrweb.info [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yahoo.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?meta.ua [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yandex.ru [NC]
RewriteRule \.(jpg|jpeg|png|gif|zip|html|php|txt|rar|kext)$
http://my.ukrweb.info/off.png [NC,R,L]

Успіху

Trackback URL for this post:

http://itua.name/en/trackback/133
Share this

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
lilumi's picture

Бачив пару раз таку

Бачив пару раз таку реалізацію на деяких сайтах, правда не думав що все робиться в .htaccess
А от в мене привичка малюнки до статті розміщувати на всяких там картинкохостингах - фотки на яндекс.фотках, а малюнки чи скріншоти на clip2net.

podarok's picture

Воно класно!

Але є недоліки... Можуть стерти, або сам забудеш і стреш...
Крім того - зовнішня картинка ніяк не буде тронута цим htaccess рішенням... А от власний архівчик хтось дасть пряме посилання - а ти будеш платити за трафік(практика показує, що "повний безліміт" в провайдерів не є таким насправді)

Drupal BackSide. Хаки. Інсталяція, Вдосконалення, Відновленн's picture

Pingback

[...] htaccess захист від hotlinking, щоб зменшити використання ресурсів Вашого сервера [...]

yAnTar's picture

Півтора місяці тому сам з

Півтора місяці тому сам з таким стикнувся, застосовува точно таку ж методику - через .htaceess

Syndicate content Syndicate content

Партнери

Recent comments

експерименти

Rambler's Top100