После того, как мы с супругой запустили свой кулинарный проект (хотя, она параллельно ведёт свой кулинарный блог), у нас возникла одна небольшая, но очень досадная проблема. Контент, который мы размещаем на нашем сайте, стали самым наглым образом воровать некоторые нехорошие личности. Если бы я или моя жена сами размещали бы заимствованный контент - было бы не так обидно. Но контент у нас на сайте уникальный. Самописный, так сказать… И его стали нагло “тырить” с нашего сайта через RSS-ленту. После консультаций на форумах и советов знающих людей, я выработал определённую стратегию защиты от таких “личностей”:
1. Посты, статьи, рецепты и другие материалы я отдаю в RSS не полностью, а частично. Со ссылкой типа “Читать далее…”, ведущей на наш сайт. Кому материал интересен - не поленятся перейти на сайт и дочитать до конца.
2. Для WordPress я использую плагин Ozh’ Better Feed, который принудительно добавляет в конец каждой RSS-записи строку вида “Источник: Кулинарные секреты от Елены. | Постоянная ссылка: Самые вкусные рецепты.”. Таким образом, когда контент воруется через RSS - эта строка (с “халявными” бэклинками
) автоматически появляется на сайте злоумышленника в каждом украденном посте.
3. И, наконец, самое важное… Поисковики (особенно Google) любят уникальный контент. И это - ни для кого не секрет. Как только кто-то ворует статью, старательно написанную моей женой, и размещает её на своём говноресурсе (простите меня за мой французский!) - эта статья перестаёт быть уникальной. И этот факт расстраивает больше всего. Падают позиции в выдаче и случается прочая неприятная ерунда. Бороться с такими ворами я решил просто - хрен им, а не уникальный контент с моего сайта! Несколько строк кода на PHP - и злоумышленник никогда не получит материал, полностью аналогичный написанному моей женой…
Приведу его с тестовым куском текста (для наглядности):
// ********************************************************
// Оригинальная строка
$str = 'Листья чая собирают, изламывают и оставляют высушиваться. Сок, выделившийся в процессе изламывания листьев, под воздействием света, тепла и кислорода окисляется и придает зеленому листу черный окрас. Этот процесс называется ферментацией. Если листья подвергались ферментации, то они в дальнейшем становятся черным чаем. Если же только что собранные листья чая лишь слегка подвяливают на воздухе, затем в течение некоторого времени подсушивают в раскаленном воздухе, а затем сворачивают в чайные листки, то получают зеленый чай.';
// Выведем оригинал
echo $str;
// str_replace:
//
// первый аргумент - строка поиска (русская буква)
// второй аргумент - на что заменить (английская буква)
// третий аргумент - строка, в которой искать
// Производим замену
$str = str_replace ( ‘а’, ‘a’, $str );
$str = str_replace ( ‘е’, ‘e’, $str );
$str = str_replace ( ‘ё’, ‘e’, $str );
$str = str_replace ( ‘о’, ‘o’, $str );
$str = str_replace ( ‘с’, ‘c’, $str );
$str = str_replace ( ‘р’, ‘p’, $str );
$str = str_replace ( ‘х’, ‘x’, $str );
// –
$str = str_replace ( ‘А’, ‘A’, $str );
$str = str_replace ( ‘Е’, ‘E’, $str );
$str = str_replace ( ‘Ё’, ‘E’, $str );
$str = str_replace ( ‘О’, ‘O’, $str );
$str = str_replace ( ‘С’, ‘C’, $str );
$str = str_replace ( ‘Р’, ‘P’, $str );
$str = str_replace ( ‘Х’, ‘X’, $str );
echo “<br /><br />”;
// Выведем результат замены
echo $str;
// ********************************************************
Идея этого метода принадлежит Роланду Чанишвили, который написал плагин для ВордПресса. Я же просто реализовал этот метод для своего сайта, без плагинов. Вот результат работы кода:
Исходный текст:
Листья чая собирают, изламывают и оставляют высушиваться. Сок, выделившийся в процессе изламывания листьев, под воздействием света, тепла и кислорода окисляется и придает зеленому листу черный окрас. Этот процесс называется ферментацией. Если листья подвергались ферментации, то они в дальнейшем становятся черным чаем. Если же только что собранные листья чая лишь слегка подвяливают на воздухе, затем в течение некоторого времени подсушивают в раскаленном воздухе, а затем сворачивают в чайные листки, то получают зеленый чай.
Модифицированный текст:
Листья чая собирают, изламывают и оставляют высушиваться. Сок, выделившийся в процессе изламывания листьев, под воздействием света, тепла и кислорода окисляется и придает зеленому листу черный окрас. Этот процесс называется ферментацией. Если листья подвергались ферментации, то они в дальнейшем становятся черным чаем. Если же только что собранные листья чая лишь слегка подвяливают на воздухе, затем в течение некоторого времени подсушивают в раскаленном воздухе, а затем сворачивают в чайные листки, то получают зеленый чай.
Приведённый выше код заменяет русские буквы в тексте на одинаковые по начертанию английские аналоги (для наглядности они в примере выделены жирным красным шрифтом). Таким образом, читатель видит и читает абсолютно нормальный текст. Для него оба приведённых фрагмента одинаковы с точки зрения восприятия. А вот для поисковиков эти тексты абсолютно разные. Вы сами можете в этом убедиться, сравнив эти два фрагмента в любом 16-ричном редакторе.
Надеюсь, что эта статья хоть немного позволит Вам защитить плоды своего труда на Вашем сайте. Удачи!





Март 27, 2009 в 13:04
У меня аналогичная ситуация, описана на http://www.w2y.ru/?p=68
Я программировать не умею, вышел из неё (вернее пытаюсь выйти) таким образом:
Сначала пощу какую-нибудь ерунду, а затем, после того как пост украдут, заменяю текст поста на тот который нужен.
Вот, посмотрю что из этого выйдет, пока вроде получается.
Март 28, 2009 в 06:48
Всеволод, в принципе, Ваш метод тоже имеет право на жизнь, но есть один нюанс: наряду с ворами RSS-ленту могут читать совершенно нормальные люди (например, мои друзья). И если я придумаю (по Вашей технологии) рецепт, например, “Утка с цианистым калием”, то он (помимо вора контента) уйдёт и моим друзьям. Даже если я потом заменю его на “Утку по-пекински” - объяснять друзьям “А что это было? И почему так невкусно?” придётся долго…
Поэтому, проще добавить 10 строк кода и не мучиться…
Март 28, 2009 в 14:27
“Утка с цианистым калием” - это наверное перебор.
Друзьям, которые успеют приготовить, уже не придётся ничего объяснять…
Я вечером пишу нечто вроде “Технический пост для робота”, а утром заменяю на настоящий. За ночь робот успевает стянуть RSS, у парня уже вся главная страница забита этими “техническими постами”
Апрель 9, 2009 в 23:10
Спасибо.
Буду внедрять у себя, ибо действительно уже достали.
Еще один действенный способ: “тук-тук” в abuse Гугла. В панели google.com/webmasters/tools/ есть ссылочка “Сообщить о спаме в индексе”.
Люди, которые стучали уже на авторов сплогов, утверждают, что работает всегда! Сплоги за короткий срок тупо уходят из выдачи.
Апрель 10, 2009 в 08:48
Google - не единственный поисковик, к сожалению. И во все саппорты стучать просто запаришься…
Поэтому проще усложнить им задачу своими методами.
Апрель 10, 2009 в 12:02
Да во все и не нужно.
Google и Яндекс - достаточно вполне.
Остальные поисковики, либо малопопулярны, либо юзают “Пользовательский поиск” Гугл или аналогичный сервис у Яндекса. От Yahoo или MSN русскоязычному ресурсу, на мой взгляд, никакой.
Апрель 10, 2009 в 19:52
А в каком конкретно месте ты его вставил?
Апрель 11, 2009 в 00:20
В XML-шаблоне. Обработку вставил перед тегом title
А результат ($str) внутри тега description
Если надо - могу цельным куском кода поделиться.
Только сразу предупреждаю, этот код не для WordPress. Наверное, он и для WP подойдёт, но к WP я его ещё не прикручивал.
Май 12, 2009 в 00:21
А как насчет того что например в Яндекс блогах индексируются как раз Rss
Май 13, 2009 в 07:14
Тут приходится чем-то жертвовать. Если учесть, что мой сайт и так неплохо проиндексирован Яндексом (примерно 95% от общего числа страниц), то, в данном случае, мне Яндекс.Блоги глубоко до лампочки