Антилич

Написал небольшой скрипт, защищающий от «хотлинка» картинок. Наверное, не очень подходит для заголовка «Плагины для WordPress», да и ладно. В общем, можно поставить на любой сайт, хуже не будет.

Идея — очень простая. При запросе картинки с «неправильным» Referer происходит перенаправление на PHP-скрипт, добавляющий в рисунок заданную надпись. Для снижения нагрузки на сервер, созданные скриптом изображения кешируются. Время «жизни» изображения в кеше задается в скрипте, по умолчанию составляет 2 часа.

Установка скрипта проста, как три копейки. Скачиваем архив, загружаем файлы оттуда на сервер (например, в директорию watermarker) и указываем следующие параметры в файле marker.php:

$text = "shura.luberetsky.ru"; // текст, используемый как watermark
$font = "./ariblk.ttf"; // путь к используемому шрифту, по умолчанию - Arial Black
$basepath = "../"; // относительный путь от директории скрипта к "корневой" директории сайта

$cachedir = "./cache/"; // директория для кешируемых файлов, должна быть доступна для записи вебсерверу
$lifetime = "7200"; // время хранения файла в кеше в секундах

Создаем директорию для кеша, затем — добавляем правила в файл .htaccess защищаемой от хотлинка директории:

# BEGIN Luberetsky watermarker
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_REFERER} ^$ [OR]
RewriteCond %{HTTP_REFERER} !^.*your\.website\.ru\/ [NC]
RewriteRule (http://(.*)\.your\.website\.ru/)?(.*)\.(jpeg|gif|png|jpg)$ /marker/marker.php?img=$3.$4
# END Luberetsky watermarker

Естественно, заменяем указанные в примере данные своими.

Для корректной работы скрипта необходимо выключить кеширование статических файлов (этим любит «баловаться» nginx, уточните у хостера).

Скачать скрипт можно у меня:

http://shura.luberetsky.ru/marker/marker.zip

Антилич: 6 комментариев

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *