Защита от хотлинкинг (hotlinking)
Навеяно постом
Представим ситуацию. Владелец сайта А размещает у себя прямую ссылку на изображение (мультимедийные файлы), размещенное на хосте другого владельца сайта Б. Данное явление носит название хотлинкинг. (hotlinking).
Хотлинк (англ. hotlink) — включение в веб-страницу файлов-изображений или других ресурсов с чужого сервера.
Другие названия – привязка к файлам, ссылки на удаленные объекты, воровство трафика.

Размещение прямых ссылок на сайт – это конечно хорошо. Но в случае с хотлинкингом вы столкнетесь с рядом проблем.
- Чрезмерный трафик.
За просмотр посетителями ваших картинок, за скачивание ваших файлов на сайте другого владельца платить будете вы.
- Нарушение авторских прав.
фактически это использование оригинальных материалов с сайта владельца без его ведома.
- Вред для поиска по картинкам.
Здесь рассматривается тот случай когда хотлинкингом занимается «ресурс для взрослых». Т.е с порно сайта ставят ссылку на вашу картинку.
Не все хостеры предоставляют cPanel опцию “Защита от хотлинкинга” (hotlink disabling).
Поэтому расмотрим несколько способов защиты от hotlinking.
1. Настройка параметров .htaccess файла для доступа к своим графическим файлам только со своего домена
- Подмена изображений.
В папку /images/ заливаем изображение hotlink.gif, на котором пишем адрес своего сайта или украдено с сайта.. .
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_REFERER} .
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yoursite\.com [NC]
RewriteRule \.(jpe?g|gif|bmp|png)$ /images/hotlink.$1 [L]
В результате, если HTTP_REFERER не содержит адрес yoursite.com показывается картинка hotlink.gif
У этого метода следующие недостатки:
- с чужого домена создаются запросы исходного файла и подменяемой картинки
- расходуется трафик
Эти недостатки устраняются следующим способом.
- 403 ошибка
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_REFERER} .
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yoursite\.com [NC]
RewriteRule \.(jpe?g|gif|bmp|png)$ - [NC,F]
В результате у ссылающего будет битая ссылка
Примечание: Код защиты не помешает Google индексировать ваши изображения и они будут в поиске по картинкам, потому что он использует кэшированную версию вашего изображения, а не hotlinking образ.
2. Управление через robots.txt
Если вы желаете закрыть от индексации картинки, то поместите их в отдельную директорию и заблокируйте с помощью robots.txt:
User-agent: *
Disallow: /images
Или закройте доступ только для гугл бота по картинкам
User-agent: Googlebot-Image
Disallow: /
БлогПост
Июль 13th, 2008 at 11:09
На счет нарушения авторских прав по российскому законодательству не уверен - браузер посетителя показывает картинки с вашего сервера, “вор” к ним даже не “притрагивается” и даже ссылка на автора есть (если он не пишет на сайте, что это его работы). Если я выложу ссылку, например, на этот пост, тоже ваши права нарушу? Как же, я же посылаю на вас посетителя без вашего ведома
У многих хостеров трафик безлимитный или ограничение, чтобы с вас качали больше, чем вы.
При таком сокрытии по referer может оказаться, что на вашем сайте ваши же посетители не увидят контента (такие же битые ссылки), например, потому что в настройках безопасности файервола типа аутпост стоит “не передавать referer”. Если уж прятать так, то анализируя логи понять где выложены ссылки и запрещать по referer для конкретных сайтов.
Цивилизованный способ защиты - различные “водяные знаки”
Июль 13th, 2008 at 13:49
У нас конечно нет DMCA.
Ссылка на пост - это другое. Здесь речь идет о включении в веб-страницу файлов,изображений с чужого сервера.
Эта переводныя статья и интересные ньюансы упущены.
Про “водяные знаки” согласен.
Нанесение на изображение
Создание с помощью php
Июль 13th, 2008 at 20:18
О чем речь идет я прекрасно понимаю, но сомневаюсь, что с точки зрения закона есть разница между <img src=”http://example.com/photo.jpg” alt=”Прикольная фотка”> и <a href=”http://example.com/page.html”>Прикольная страничка<a>
Понятно, что владельцу example.com вторая конструкция куда как более интересна, но называть первую нарушением авторских прав, по крайней мере в России, по-моему нет оснований, и то, и другое ссылки на сторонний объект, как эти ссылки интерпретируют третьи стороны (производители браузеров в частности) автор ссылок ответственности не несет.
Июль 13th, 2008 at 20:29
P.S. Кстати в тему -
смените надпись, закон уже утратил свою силу
Июль 13th, 2008 at 21:08
Хоть кто-то заметил)
Можно сменить на ПОСТАНОВЛЕНИЕ Пленума Верховного Суда РФ от 19.06.2006 №15
Июль 15th, 2008 at 03:57
Ну зачем так сложно, в части 4 ГК все расписано
Июль 15th, 2008 at 21:43
Спасибо!
Когда буду писать статью про авторское право, отправлю ее Вам на премодерацию)