Разумный способ предотвращения хотлинкинга изображений с помощью .htaccess
Вы заметили, как кто-то крал ваши изображения, напрямую брал URL и отображал на своих сайтах без вашего разрешения? Это то, что мы называем горячая ссылка на изображение. Это плохо, поскольку он не только крадет наши изображения, но и использует нашу пропускную способность. Так как он вызывается напрямую с нашего сервера, каждый раз, когда изображения загружаются на его веб-сайт, мы тратим пропускную способность. Управление через .htaccess является одним из наиболее эффективных способов предотвращения хотлинкинга изображений..
И под умом мы подразумеваем предоставление веб-мастеру большего контроля над .htaccess с точки зрения:
- какие сайты заблокировать
- какие сайты разрешить
- разрешить / запретить пустые ссылки
- отображать пользовательские изображения, обнаруживающие изображения
- файлы для защиты
Шаг 1 - Создайте .htaccess
Если вы в настоящее время не используете .htaccess в своей учетной записи, вы должны создать его. Откройте блокнот, сохраните его как .Htaccess без какого-либо расширения позади. Для тех, у кого уже есть файл .htaccess, загрузите его на свой локальный компьютер, так как мы сделаем некоторые изменения на шаге 2.
Шаг 2 - код горячей ссылки .htaccess
Вставьте следующий код в ваш .htaccess.
RewriteEngine в RewriteCond% HTTP_REFERER! ^ $ RewriteCond% HTTP_REFERER! ^ Http (s)?: // (www \.)? Yourdomain.com [NC] RewriteCond% HTTP_REFER! ^ ^ Http (s) ?: //(www\.)?yourdomain2.com [NC] RewriteRule \. (jpg | jpeg | png | gif) $ http://hpmouse.googlepages.com/hotlink.gif [NC, R, L]
объяснение
Строка 2 - Разрешить пустые ссылки (рекомендуется).
RewriteCond% HTTP_REFERER! ^ $
Некоторые пользователи работают под брандмауэром и, таким образом, не предоставляют никакой информации о реферерах. Запрещение пустых ссылок означает блокирование доступа к этим изображениям. Однако, если вы хотите заблокировать пустые ссылки, просто удалите строку 2.
Строка 3, Строка 4 - сайты, на которых можно связать ваши изображения.
RewriteCond% HTTP_REFERER! ^ Http (s)?: // (www \.)? Yourdomain.com [NC] RewriteCond% HTTP_REFERER! ^ Http (s)?: // (www \.)? Yourdomain2. com [NC]
По умолчанию все сайты заблокированы от хотлинкинга. Только те, которые вы указали, могут сделать это.
Строка 5 - формат файла для блокировки, пользовательская блокировка изображений.
RewriteRule \. (Jpg | jpeg | png | gif) $ http://hpmouse.googlepages.com/hotlink.gif [NC, R, L]
Между () находятся изображения, которые вы хотели заблокировать от хотлинкинга. Чтобы добавить больше отдельных их”|”
Изменить 'http://hpmouse.googlepages.com/hotlink.gif'к изображению, которое вы установили, и при обнаружении хотлинкинга изображения это изображение будет отображаться. Просто убедитесь, что это изображение не защищено горячей ссылкой, или ваш сервер может зайти в бесконечный цикл.