Защита контента. Авторские права.
В наш век, когда все имеет свою цену, стал особенно ценен уникальный контент. Тем, кто занимается продвижением сайтов - SEO - этого не нужно объяснять. Но в последнее время все чаще и в бОльших объемах контент качует с одного сайта на другой, причем “уходит” он практически одновременно с публикацией на сайте-источнике. Происходит это по причине того, что все чаще разработчики ГС (здесь и далее: говно-сайт) используют различные скрипты для воровства новостей, статей и прочей текстовой информации.
Естественно, что потратив определенное время на написание текста, хочется сохранить его в уникальном виде. Конечно мы не можем защититься от ручного копирования, как говорится: “кто захочет, тот сворует”, но вот обломать автоматический грабеж все-таки возможно. Конечно я не асс в данной сфере, но все таки решил попробовать. В итоге воровство контента с тестируемого сайта прекратилось, а воровали, как минимум, с 12-ти других ГС.
Для начала я решил написать функцию, через которую бы прогонялся весь защищаемый контент. Для ее написания я использовал PHP пятой версии. Сама функция является проверкой на наличие web-сервера на компьютере с определенным ip-адресом.Происходит тестирование на наличие сервера только в случае, если не была получена информация о браузере. Можно сделать проверку более “суровой”, ниже написано как.
Итак, функция test4graber или “тестируем на грабеж”.
function test4graber($user_ip,$user_agent,$page_text) {
if ($user_agent==”") {
// в моем примере время опроса ip - 0.2 секунды (значение в конце строки чуть ниже), вы можете поставить другое значение.
if (@$fp=stream_socket_client(”".$user_ip.”:80″, $errno, $errstr, 0.2)) {
$result=”Хватит воровать мой контент!”;
}else{
$result=$page_text;
}
}else{
$result=$page_text;
}
return $result;
}
Первая переменная $user_ip - это ip клиента, обратившегося к контенту, переменная $user_agent - браузер, который при этом использован, $page_text - непосредственно сам текст, который нужно защитить.
Допустим, наш контент равен тексту в $page_content. Попробуем провести его через нашу функцию.
$page_content=”Просто какой-то текст, который хотим защитить!”; // выводимый контент
echo test4graber($HTTP_SERVER_VARS['REMOTE_ADDR'], $_SERVER['HTTP_USER_AGENT'], $page_content); //применение функции
Здесь $HTTP_SERVER_VARS['REMOTE_ADDR'] - стандартная функция PHP для определения IP-адреса, с которого происходит соединение, $_SERVER['HTTP_USER_AGENT'] - стандартная функция для определения браузера, через который происходит соединение. Также стоит отметить, что в большинстве случаев, когда контент варуется автоматически, тип браузера не передается. Вы можете убрать строку if ($user_agent==”") { , и тогда контент не будет отдаваться даже если переменная USER_AGENT получена, но в таком случае будут блокироваться и роботы поисковиков. Т.е. вы либо блокируете все попытки захвата вашего контента, либо убираете данную строку и прописываете исключения для поисковых роботов. Я этого не сделал, потому что лень собирать информацию по тому, как какой поисковик представляется (каждый может иметь по несколько роботов, каждый из которых представляется по разному).
В заключении хочу сказать, что всегда найдут уроды, которые будут красть у вас информацию всеми возможными способами, но наша задача - сделать их будни наиболее хреновыми!

Роботов долго искать не надо)) Их и так весь инет знает.
3pu.info/search-robots-user-agent/ - вот примерный список. Нашел за 5 минут. Сапешных роботов можно найти на Сапе, тоже тайны никто из этого не делает.
Друое дело, что нет гарантии от того что есть неизвестные общественности роботы Яндекс и Гугл …
Согласен. Таким образом можно сделать $good_agen например, в котором в массивом перечислить все поисковые роботы и if ($user_agent!=”ни одному из этого листа”) - тестировать контент. Но в принципе половину дергалок можно будет и такой функцией прибить.
Интересная информация, а я еще видел тоже технические приемы защиты текста от копирования http://www.apollo-8.ru/index.php?option=com_content&task=view&id=1321&Itemid=99 а вообще защита контента действительно важно при продвижении сайта. Если же сайт просто информационный, то это не так важно.
Анатолий
Ну при отключенных javascript тот вариант не будет работать, хотя вместе сразу использовать все было бы неплохо.
гм. я даже curlом могу послать любой user_agent, да и вообще любые заголовки на сервер.
Метод странненький однако, так от хацкеров любителей.
Ну в такоооом случае, можно прописать ip-адреса роботов вместо user_agent-ов.
Вообще может сяду как-нибудь и реально напишу более проверенную функцию.