جلوگیری از کپی کردن محتوای سایت
برای این کار بهتره از سی اس اس استفاده کنید تا مشکلات عدم ایندکس شدن محتوا برای موتورهای جستجو رو نداشته باشید مثال ذیل کد لازم برای شماست که میتونید با استفاده از این کد برای هر تگی در سایت، اجازه انتخاب مطلب رو از کاربر بگیرید
نکته: این فقط یک استایل هست که با استفاده از اون نمیزاریم بازدید کننده مطلب مورد دلخواه خودش رو با روش های عادی کپی کنه و این روش هم قابل دور زدن هستش پس حواستون باشه به این قضیه.
جلوگیری از کپی محتوای سایت با css
کدهای جلوگیری از انتخاب متن با css
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
کدهای اجازه دسترسی به بازدیدکننده برای انتخاب متن با css
-webkit-user-select: text;
-khtml-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
-o-user-select: text;
user-select: text;
غیر فعال کردن منوی کلیک راست (Context Menu) با جاوا اسکریپت برای جلوگیری از کپی
اجازه دهید با یکی از رایج ترین مکانیسم های جلوگیری از کپی متن شروع کنیم - غیرفعال کردن کلیک راست.
تنها کاری که باید انجام دهیم این است که برای contextmenu event، addEventListener("contextmenu") بنویسیم و از باز شدن آن با تکه کد evt.preventDefault() جلوگیری کنیم.
ما در این قسمت کلیک راست ماوس را غیر فعال نمیکنیم چون راههای دیگری برای کلیک راست کردن وجود دارد (به عنوان مثال صفحات لمسی میتوانند این داستان را دور بزنند)، ما در این قسمت Contextmenu را غیر فعال کردیم تا دیگر منویی برای کلیک راست وجود نداشته باشد.
document.addEventListener("contextmenu", evt => evt.preventDefault(), false);
غیر فعال کردن کپی در کلیپبورد (جلوگیری کپی با جاوا اسکریپت)
این یکی از مواردی است که شخصاً فکر میکنم منطقیتر است – حتی پس از غیرفعال کردن contextmenu، افراد همچنان میتوانند با استفاده از کلیدهای میانبر یا از خود آیتمهای منوی مرورگر متن را کپی کنند. بهترین راه برای جلوگیری از آن، هدف قرار دادن خود رویداد کپی است.
یک addEventListener() برای رویداد copy مینویسیم.
توانید متن کپی شده در کلیپبورد را با evt.clipboardData.setData ("text/plain", "MESSAGE") تغییر دهید.
در نهایت، از عمل کپی پیشفرض با evt.preventDefault() جلوگیری میکنیم.
document.addEventListener("copy", evt => {
evt.clipboardData.setData("text/plain", "Copying is not allowed on this webpage");
evt.preventDefault();
}, false);
جلوگیری از کپی قسمت خاصی از محتوا با جاوا اسکریپت
اگر فقط می خواهید از یک بخش خاص از متن محافظت کنید، آنقدرها هم سخت نیست.
<script>
window.addEventListener("load", () => {
var target = document.getElementById("no-copy");
target.addEventListener("contextmenu", evt => evt.preventDefault(), false);
target.addEventListener("copy", evt => {
evt.clipboardData.setData("text/plain", "Copying is not allowed on this webpage");
evt.preventDefault();
}, false);
});
</script>
<style>
#no-copy { user-select: none; }
#no-copy::selection { background: none; }
#no-copy::-moz-selection { background: none; }
</style>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
<p id="no-copy">This section cannot be copied.</p>
فقط مانند مثال بالا با استفاده از تکه کد زیر المان مربوطه را هدف قرار دهید:
var target = document.getElementById("no-copy");
خب تبریک میگم، شما توانستید که یک سطح امنیتی قابل توجهی برای جلوگیری از کپی محتوای متنی وب سایت خود اعمال کنید. اما لطفاً توجه داشته باشید که اینها جلوی "super hacker copycast" را نمیگیرند. جاوا اسکریپت و CSS را می توان غیرفعال کرد و تمام این "محافظتها" بیهوده خواهد بود.
اما داشتن محافظت در این سطح همچنان بهتر از هیچ است. حداقل از بسیاری از کپیکنندگان نه چندان حرفهای جلوگیری میکند.
جلوگیری از کپی محتوا با حفاظت حقوقی
اگر چه موارد بالا کارساز نیستند اما همانطور که گفتیم بهتر از نداشتن هیچ محافظی است اما شما میتوانید که راههای قانونی را برای محافظت از کپی برداری را هم در نظر بگیرید.
- ابتدا باید یک تله درست کنید. یک واترمارک کم رنگ روی تصاویر خود اضافه کنید، پیام مخفی "این مقاله متعلق به jobteam.ir است" را در جایی تنظیم کنید.
- اجازه دهید کپی کننده طعمه را بگیرد.
- از Whois برای پیدا کردن شرکت میزبانی کپی استفاده کنید - ممکن است اطلاعات پنهان باشد و ممکن است لازم باشد با چندین بار در مورد سرقت محتوا با آنها تماس بگیرید.
- هنگامی که اطلاعات را به دست آوردید، با شرکت میزبان تماس بگیرید، به آنها مدرکی نشان دهید که محتویات شما به سرقت رفته است. اکثر شرکتهای میزبانیکننده از آن پیروی میکنند، کمک میکنند و نسخه کپی را برای همیشه مسدود میکنند.
- از طرف دیگر، میتوانید در DMCA ثبتنام کنید، هزینه کمی بپردازید و از آنها بخواهید که به شما در حفاظت از محتوای شما، کمک کنند.
نکته: من شخصاً وبسایتهایم را با کنسول جستجوی گوگل و ابزار وبمستر بینگ ثبت میکنم. لحظهای که مقالهای را منتشر میکنم، بهصورت دستی درخواست Crawl و Register میکنم – کپیکتها هیچ شانسی برای برنده شدن در رتبهبندی جستجو نخواهند داشت. در واقع با کپی برداری بیشتر فقط به خودشان آسیب می زنند.
اگر حتی میخواهید حفاظت بیشتری داشته باشید، اسکریپتهای خود را پنهان کنید تا پیدا کردن محل قرارگیری کد حفاظت شده بسیار دشوار شود.