Дано:
1. Блог на домені piktor.org.ua, куди я заливаю фотографії у теку /files. Сам блог крутиться на Drupal 7.
2. Дзеркало блогу на thepiktor.livejournal.com, куди налаштовано кроспостинг дописів із тими-ж фотографіями. Інколи, також, відправляю дописи у ЖЖ-спільноту ua_travels.livejournal.com.
3. Жадібний власник блогу, який хоче заборонити хотлінкінг фотографій на інші ресурси, тобто я.
Я знайшов автоматичний генератор коду для .htaccess:
http://www.htaccesstools.com/hotlink-protection/Увів усі дані, отримав код + додав до нього фрагменти щоб дозволити перегляд фотографій у пошуковиках. Вийшло таке:
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?piktor.org.ua [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?thepiktor.livejournal.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?ua_travels.livejournal.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?.*.livejournal.com/friends [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !bing\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]
RewriteCond %{HTTP_REFERER} !msn\. [NC]
RewriteCond %{HTTP_REFERER} !yahoo\. [NC]
RewriteCond %{HTTP_REFERER} !yandex\. [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://ic.pics.livejournal.com/thepiktor/34655138/3201/3201_original.png [NC,R,L]
Останній рядок - то картинка-заглушка. Даний код було вставлено у штатний .htaccess Drupal'a, туди, де секція <IfModule mod_rewrite.c> - сам модуль, звісно, увімкнено.
Але воно не працює. Картинки на інших сайтах нікуди не зникли, наприклад ось:
http://www.malecha.org.ua/forum/index.php?showtopic=23757&st=0&p=864402&hl=%D0%B1%D1%83%D0%BA%D0%B8&fromsearch=1&#entry864402Іще одна проблема - стрічка друзів у Livejournal - треба, щоб картинку було видно у <username>.livejournal.com/friends - я для цього прописав рядок:
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?.*.livejournal.com/friends [NC]
Але не впевнений, що правильно.