2009
Защита картинок от копирования
Когда я писал статью «Поисковые операторы Google» попался на небольшую ловушку В общем нужна была картинка для статьи, я посмотрел Яндекс.Картинки и нашел нужный материал, затем мне лень было заливать картинку себе на сервер и я поставил прямую ссылку scr=»" с другого сайта. Думал, ну ладно… халявная ссылка у них будет. Опубликовал статью, проверил, все нормально.. ушел гулять. Потом зашел на сайт с телефона и увидел красующийся логотип сайта Sevens Hеaven, вместо той картинки, которую я размещал
Недолго думая я перезалил картинку на свой сервер и все стало нормально. Решил погуглить и вспомнил о таком методе защиты картинок, через .htaccess . Правда в основном это подходит для ботов, которые просто воруют и не проверяют. Хотя и обычным людям это доставляет много неудобств.
Итак, нужно добавить пару строчек в .htaccess и не отдавать левым сайтам свои картинки. Вместо этого мы будем отдавать им или баннер вашего сайта, или просто ошибку 404. Вы можете пользоваться этим файлом на любом хостинге, и это решение подходит любому движку.
Если у вас уже есть файл .htaccess в корне сайта, то следующие строчки нужно просто дописать в файл.
Значит с целями мы определились, теперь будем писать:
Включаем RewriteEngine
RewriteEngine on
Не надо это писать, если в вашем .htaccess этот модуль уже включен.
Разрешённые сайты
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?say-seo.ru [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?say-seo.com [NC]
Вписываем здесь домены, которым разрешено вставлять себе на страницы ваши картинки. Ограничений на количество нет.
Пропускаем пустые реферы?
Что делать если человек пришёл с пустым referer. Это такое данное, которое указывает на домен, с которого пришёл пользователь. Так же referer может быть закрыт разными firewall и другими программами. Если вы хотите запретить показ картинок пользователям с пустыми реферерами, просто удалите эту строчку.
RewriteCond %{HTTP_REFERER} !^$
Что делаем с поисковыми системами?
На самом деле картинки в поисковых системах приносят трафик. Разрешаем поисковые системы:
RewriteCond %{HTTP_REFERER} !google\. [NC] RewriteCond %{HTTP_REFERER} !search\?q=cache [NC] RewriteCond %{HTTP_REFERER} !msn\. [NC] RewriteCond %{HTTP_REFERER} !yahoo\. [NC] RewriteCond %{HTTP_REFERER} !yandex\. [NC]
Если вы хотите запретить поисковым системам доступ к картинкам, просто удалите эти строчки.
Разрешаем рекламную картинку
Так как мы хотим показывать рекламную картинку всем тем, кто ворует ваши картинки, её надо разрешить.
RewriteCond %{REQUEST_URI} !^hotlinker\.gif$
Обратите внимание, что название рекламной картинки hotlinker.gif, которая размещена в корне сайта. Если это не так, измените название файла на своё.
Для каких расширений показывать рекламную картинку
Какие типы файлов мы заменяем нашей рекламной картинкой? Вот так это делается.
RewriteRule \.(jpe?g|png|gif)$ hotlinker.gif [NC,R,L]
Если у вас есть дополнительные типы файлов, просто добавьте их сюда.
В итоге должно получиться вот так:
RewriteEngine on RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?say-seo.ru [NC] RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !google\. [NC] RewriteCond %{HTTP_REFERER} !search\?q=cache [NC] RewriteCond %{HTTP_REFERER} !msn\. [NC] RewriteCond %{HTTP_REFERER} !yahoo\. [NC] RewriteCond %{HTTP_REFERER} !yandex\. [NC] RewriteCond %{REQUEST_URI} !^hotlinker\.gif$ RewriteRule \.(jpe?g|png|gif)$ hotlinker.gif [NC,R,L]
Русифицировал zver.in