Как защитить сайт от копирования


Как защитить контент от воровства.

Если честно, в последнее время меня уже просто достал наглый копипаст.

Как добавить ссылку на источник JavaScript

Как добавить ссылку на источник JavaScript

Больше всего раздражающий фактор создает именно отсутствие ссылки на источник. И я уже молчу о том, что она должна быть открытой для индексации.

Общая концепция защиты текста сайта от копирования.

Все таки хочется обратить внимание на тот факт, что абсолютной защиты контента от воровства нет и быть не может. Все что можно увидеть, можно скопировать или тупо набрать вручную, это и новичку понятно.

Как правило воруют контент именно новички, которые ничего не знают о SEO, и конечным результатом подобной работы, зачастую оказывается  полная пессимизация а то и вовсе БАН со стороны поисковых систем.

Многие знают, что больший приоритет ПС отдают трастовым ресурсам и дате индексирования материала.

Поэтому вебмастеру в первую очередь необходимо работать над повышением общего траста сайта, и использовать все возможные SEO инструменты для быстрой индексации интернет ресурса.

В одной из предыдущих статей я писал о том, как защитить графические изображения (картинки) от хотлинка, и даже упомянул о том, какие порой не совсем стандартные методы, мне приходиться использовать для защиты своего сайта от плагиата.

Но справедливости ради, хочется отметить, что это все таки больше  ручная работа, если можно так выразиться, 🙂 которая отнимает очень много времени, а оно как известно самый дорогой и вообще невосполнимый ресурс нашей жизни.

Поэтому реализацию данного вопроса, стоит немного автоматизировать.

Самый простой способ защиты текста от копирования — это использование инструментов JavaScript.

В первую очередь стоит обратить внимание на использование принципа необходимой достаточности, и лично я считаю, что вебмастеру не стоит злоупотреблять возможностями JavaScript.

Сюда можно смело отнести отключение правой кнопки мыши, использование диалоговых окон (alert, confirm, prompt) и отключение некоторых комбинаций клавиатуры.

Ведь всегда можно посмотреть исходный код страницы и вытащить от туда необходимый объем информации, или просто заюзать текстовый браузер с отключенным JS 😉

Поэтому, как вы догадываетесь, самые острожелающие, всегда найдут метод достижения поставленной цели.

Т. к. чаще всего воруют контент именно новички, которые возможно просто и не знают всех тонкостей SEO, то мне видится что вполне достаточно будет написать небольшой JS, который будет просто добавлять в конец скопированного материала, одно маленькое уведомление и ссылку на источник.

Единственное на что я решил обратить внимание, так это на количество скопированных символов, ведь пользователи моего блога часто просто копируют некоторый код или инструкции не для того, чтобы разместить их в сети интернет, а для выполнения своих узкопрофильных задач, и меньше всего, ссылкой на источник, мне хотелось бы напрягать именно их.

Пример защиты от копирования на JavaScript

За поиском подходящего скрипта я отправился в Google. Улыбку конечно же вызвало наличие одного и того же скрипта, даже никто переменные поменять не удосужился 🙂 на многих сайтах, которые именно пишут о защите авторства, причем у некоторых он еще и оказался не совсем рабочим.

Ну да ладно, в любом деле важен конечный результат, и вот моя модификация Джаваскрипт:

<script type="text/javascript">
function addLink() {
var b_element = document.getElementsByTagName('body')[0];
var selection_txt = window.getSelection();
var to_string = window.getSelection().toString();
var sel_count = to_string.length;
//Здесь находится содержание добавляемого линка
var pagelink = "<p>Источник материала:
<a href='"+document.location.href+"'>"+document.location.href+"</a>
При копировании материала ссылка на источник ОБЯЗАТЕЛЬНА!
С уважением ©э® Master-It.biz </p>";
//Количество разрешенных символов, у меня 300
if (sel_count > 300){
var copytext = selection_txt + pagelink;
}
else{
var copytext = selection_txt;
}
var newdiv = document.createElement('div');
newdiv.style.position = 'absolute';
newdiv.style.left = '-99999px';
b_element.appendChild(newdiv);
newdiv.innerHTML = copytext;
selection_txt.selectAllChildren(newdiv);
window.setTimeout( function() {
b_element.removeChild(newdiv);
}, 0);
}
document.oncopy = addLink;
</script>

Данный скрипт необходимо внедрить вставить в защищаемую страницу.

Защита от копирования на WordPress

Если вы являетесь постоянными читателями моего блога, то знаете, что я стараюсь сводить использование плагинов к минимуму, и поэтому все что возможно (а возможно, практически все),  стараюсь реализовывать самостоятельно, т. е. ручками. 🙂

Поэтому, делаем backup, открывает function.php, и в самый конец добавляем функцию: add_copyright_link()

function add_copyright_link() {
if (is_single()) { ?>
<script type="text/javascript">
//JS код
</script>
<?php
}
}
add_filter('wp_head','add_copyright_link');
?>

Вот собственно и все!

P.S. Если у вас, что-то не будет получаться с написанием скриптов, то на днях я готов залить исходник для скачивания.

Кстати, сегодня я разместил рабочий скрипт, который нужно просто вставить в тело защищаемого документа, т. е. страницы. 😀

Скачать исходник JS, можно здесь.

Скачать исходник функции защиты текста от копирования на WordPress можно здесь.

Во время тестирования в скрипте была обнаружена XSS уязвимость, поэтому исправленную версию JS можно скачать тут.