Не даємо Pinterest красти зображення

Pinterest logoНова соцмережа Pinterest вже встигла вийти в лідери по обсягам трафіку та відвідуваності (головним чином в Північній Америці).
Штука, безперечно, цікава – основною функцією є викрадення зображень 🙂
Можна створити різні т.зв. pinboards (дошки для приколювання), та приколювати до них різні зображення.

Мене, як людину яка є в певному сенсі вебмайстром, зацікавив механізм, за допомогою якого можна обмежити (фактично заборонити) Pinterest звантажувати зображення з моїх сайтів.
Є декілька способів не дати ПінАм красти трафік.

1. Давати скраперу Pinterest’у зрозуміти, що ви не бажаєте щоб конкретна сторінка далася йому в руки.
Для цього треба лише додати в код сторінки мета-тег з відповідною директивою:

<meta name=”pinterest” content=”nopin”>

Перевагою цього підходу є те, що мін запропонований самим Pinterest’ом. Але що на перспективу? З’явиться ще пару десятків клонів Pinterest, і для кожного треба буде писати мета-теги?

Нє. Не годиться. Деякі спеціалісти схиляються до більш глобальної заборони тегом:

<meta name=”republish” content=”no”>

але це на перспективу. Діяти треба вже зараз, будемо викорінювати зло.

2. Інструмент з дідусевої коробки: mod_rewrite. 👿

Цей метод використовувався ще тоді, коли інтернети були маленькими, модеми – великими, канали – вузенькими, а трафік – дорогим.
Ніхто не хотів попадати на бабло, через те що картинки з його ресурсу вставляє собі на сторінки якийсь Петя з Бобруйська. Тому на сторонні ресурси віддавалися на картинки, а величезні залізобетонні болти 🙂
Це досягалося шляхом перевірки реферера запитів.

Сьогоднішня ситуація з Пінтерестом дозволяє застосувати аналогічний підхід, але з використанням ідентифікатора User-Agent, який (на даний момент) виглядає прибьлизно так:

“Pinterest is Pinterest/0.1 +http://pinterest.com/”

Ще одна фіча, яку використовує Пінтерест – так званий букмарклет. Як працює – не розповідатиму, але ця штука передає Referer зі значенням http://pinterest.com/pin/create/bookmarklet/.

Все що нам треба зробити – фільтрувати запити до зображень по User-Agent. Якщо у вас стоїть Apache з mod_rewrite, просто створіть файл .htaccess в папці із зображеннями наступного змісту:

RewriteCond %{HTTP_USER_AGENT} ^Pinterest.*
RewriteRule .*.png$ copyright.png

І ця штука замість усіх картинок віддаватиме Pinterest’у файл copyright.png

Якщо у вас не Апач, мені немає сенсу вам розповідати як робиться реврайт. 🙂

Валідних вам конфігів 🙂