»
Помоги проекту! Оставь рекомендацию!
Добавить в закладки · Краткие новости и уведомления [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум » Флудилка » Интернет » Способ защиты от копипасты (Защита от копирования с сайта)
Способ защиты от копипасты
fomirДата: Четверг, 04.08.2011, 05:51 | Сообщение # 1
Основатель проекта
Группа: Администраторы
Сообщений: 29
Награды: 3
Репутация: 5000
Статус: Offline
Текст с кодом можно скачать через ссылку, спрятанной в спойлере! cool


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

Весьма актуальной на сегодняшний день темой становится вопрос свежести и новизны информации. За новинки буквально дерутся веб-мастера. И по этому с каждым днем все более важным вопросом становится:
Можно ли защитить копирование моего контента?

Ответ: Да, это возможно.

Именно о запрете копирования контента мы и поговорим с Вами в этой статье:

запрет на копирование содержимого HTML страниц
запрет на использование правой кнопки мыши на HTML странице
запрет на копирование изображений

Прежде всего, давайте подумаем, как именно можно скопировать содержимое Вашего сайта:

выбрав соответствующий пункт в контекстном меню на HTML странице
выделив часть содержимого и нажав комбинацию Ctrl-C

Запрет на копирование правой кнопкой мыши

Для того чтобы запретить реакцию на нажатие правой кнопкой мыши нужно добавить вот такой простенький скрипт в Head’er часть HTML страницы:
Code
<SCRIPT language="JavaScript">
<!--
function copyright()
{
if (event.button==2) { alert(‘Содержимое запрещено копировать!'); }
}
document.onmousedown=copyright
// -->
</SCRIPT>


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

Все бы замечательно, но такая функция запрещает лишь нажатия кнопками мыши, но не комбинацию клавиш Ctrl-C. Чтобы запретить копирование в буфер обмена нужно добавить еще одну функцию:
Code
function nocop()
{
alert ("Копирование запрещено администрацией сайта!");
return false;
}


И затем вызывать эту функцию при копирование содержимого страницы:
Code
<BODY ONCOPY="return noсop()">


Все вместе это будет выглядеть вот таким образом:
Code

….
<SCRIPT language="JavaScript">
<!--
function copyright()
{
if (event.button==2) { alert(‘Содержимое запрещено копировать!'); }
}
document.onmousedown=copyright;
function nocop()
{
alert ("Копирование запрещено администрацией сайта!");
return false;
} // -->
</SCRIPT>

<BODY ONCOPY="return noсop()">


Существует еще одна сокращенная форма записи, которая стала возможной из-за того, что в Браузерах язык JavaScript принят по умолчанию:
Code
<body oncopy="return false" onselectstart="return false">
....
</body>


Первая функция запрещает копирование комбинацией Ctrl-C, а вторая запрещает выделение мышкой на текущей странице.
Запрет на копирование изображений:

Для этих целей тоже существует одна возможность.
Code
<img src=”pic.gif” oncontextmenu="return false" ondragstart="return false" />


Функция oncontextmenu – отвечает за контекстное меню элемента, а функция ondragstart – отвечает за перетаскивание элемента.

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

Мы поместим наше изображение в родительский контейнер, вместо изображения поместим прозрачный gif рисунок таких же размеров, как и изображение, а наше изображение сделаем фоновым рисунком для родительского контейнера:
Code
<DIV class=”pic”><IMG src=”pic.gif” width=”100px” height=”50px” /></DIV>


А CSS код для класса pic будет следующим:
Code
.pic{width:100px;height:50px; background:url(pic_01.gif) no-repeat }


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

Можно еще усложнить ему жизнь добавив то, что мы уже знаем, т.е. запрет на перетаскивание и запрет на контекстное меню:
Code
<DIV class=”pic”><IMG src=”pic.gif” width=”100px” height=”50px” oncontextmenu="return false" ondragstart="return false" /></DIV>


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

Но могу Вам гарантировать, что от 60% жадных пользователей Вы себя уберегли.
Автор: Чекалин Ярослав
 
Форум » Флудилка » Интернет » Способ защиты от копипасты (Защита от копирования с сайта)
Страница 1 из 11
Поиск:

Краткие новости и уведомления.
Перешли на новый форум!) Наслаждайтесь!)

Хочу заметить, что на сайте отключены возможности копирования! Мы боремся с Копипастой!

Желаю приятной работы! =)