如何限制用户复制Web内容

时间:2010-05-19 13:11:26

标签: javascript html

我正在创建一个网站,我的客户要求restrict user to copy TEXT displayed on the web page。我该怎么做?我在我的应用程序中使用PHP和HTML。

14 个答案:

答案 0 :(得分:24)

不要试图粗鲁,但人们为什么一直这样问?如果您希望人们能够查看信息,那么您无法阻止他们复制信息。任何类型的javascript胡说八道,以防止右键单击或选择或任何其他不会阻止确定的小偷,并将惹恼合法用户。

答案 1 :(得分:12)

如前面的每个答案所述,没有办法阻止某人使用您网站上的副本。即使您使用方法来限制直接复制和粘贴,也总是有手机截图,OCR或旧的写作。

从不同的角度来看......如果内容是敏感的并且您的客户不希望它分发,您可能会将其添加到您的网站中需要注册和身份验证才能访问的部分。通过这样做,您可以要求用户同意注册的条款和条件,明确拒绝从网站上复制任何内容的许可。

只是一个想法。

答案 2 :(得分:5)

正如其他所有答案所说,从技术上讲,你无法阻止人们复制你网页的文字。要显示给用户的文本,您必须将其发送到用户的计算机,这意味着他们可以复制它。

但是,您可以合法地阻止他们使用CopyScape等服务复制文字

  

Copyscape致力于保护   你的宝贵内容在线。我们   提供世界上最强大的   最流行的在线抄袭   检测解决方案,排名第一   独立测试。 Copyscape的   产品深受数百万人的信赖   全球网站所有者检查   他们的新内容的原创性,   防止重复内容和搜索   在线查看现有内容的副本。

     

Copyscape提供免费服务   查找您的网页副本   在线,以及两个更强大的   专业的预防解决方案   内容盗窃和内容欺诈:

     

Copyscape Premium 提供更多功能   强大的抄袭检测比   免费服务,还有许多其他服务   功能,包括复制粘贴   原创性检查,批量检索,案例   跟踪和API

     

Copysentry 提供全面的功能   保护您的网站   每天自动扫描网页   或者每周一次,并在新的时候给你发电子   找到您的内容的副本。

Read more on their site

答案 3 :(得分:4)

您可以强制用户拨打电话号码来听取您网站的文字,如果您不希望别人复制/粘贴您网页的文字,这是一个很好的解决方案

答案 4 :(得分:3)

基本上,你不能。即使有办法限制用户复制&粘贴文本,他们总是可以抓住屏幕并以某种方式将其翻译成文本。

我建议不要尝试以任何方式限制用户。它不是很友好,人们通常讨厌它。如果你想创建一些私人内容,只需让人们登录,做一些ACL检查,并希望他们不会在其他地方复制它。您还可以考虑使用某种许可来阻止人们“窃取”您的内容。

答案 5 :(得分:2)

不,AFAIK,你无法做到这一点。除非您在Flash或其他非HTML插件内容中构建整个内容。

答案 6 :(得分:2)

简短的回答是你不能(轻松地)这样做 - 如果它在浏览器中可见,那么它可以以某种方式获得。如果您只是显示文本,情况尤其如此。

答案 7 :(得分:2)

即使他是用闪存构建系统,用户仍然可以手写出内容,如果他们非常想要它,就像其他人都说不可能阻止一个坚定的人获取你的内容,除非你当然不要显示它。

答案 8 :(得分:2)

这一切都回到了“为什么”?如果信息是秘密的,请不要首先将其显示给某人。如果你担心版权侵犯,正如其他人所说,一旦有人看到文字,即使你以某种方式提出了一个出色的技术解决方案,阻止他们以任何方式复制文本(我怀疑是可能的),他们总是可以用手写下来,或用数码相机拍摄屏幕照片,然后进行OCR。在数字时代,您对版权侵权的保护比技术更合法:如果有人窃取您的资料并转售,请起诉他们。

根据材料的性质,您可能会让人们难以在一个屏幕上完成所有操作。就像,如果你正在运行一个在线电话簿而你害怕人们窃取你的列表,而不是在一个巨大的页面上显示大量的列表 - 所有“A”或其他 - 你可能需要人输入搜索字词,一次只显示两个或三个可能的匹配。然后,如果有人想窃取你的列表,他们将不得不花费数千小时进入每个可以想象的搜索词。现在我想起来了,前几天我正在使用一些电话簿网站给我一个可能匹配的名字和地址列表,但后来我不得不点击每一个来获取电话号码。当时我认为“愚蠢的滋扰”,但现在它打击了我:他们可能有同样的想法,我简单地认为是原创的。无论如何,如果您的材料是个别事实的数据库,这可能是实用的。如果它是一篇关于立陶宛经济史或其他类似文章的文章,那么让用户以微小的方式进行搜索就会让人们放弃你,去寻找其他地方。

就个人而言,我采取的理念是我不在乎。当我对我感兴趣的主题进行谷歌搜索并在我从未征得我许可的网站上发现我写过的文章时,我经历了很多次。我曾经在一篇预先写好的学生论文网站上找到了一篇文章。 (当然,并不是说任何学生只会在上面粘贴他的名字,将其打印出来并交给他们。他们“仅用于研究目的”。我确信他们是否知道学生声称这是他们自己的工作他们我会立即取消网站。)所以我在网上发布的一篇文章,任何人都可以免费使用,这些人现在向不诚实的学生收取25美元的下载费用!我的反应是,很酷!当其他人引用你的话时,这是一回事,但是当别人抄袭你的时候你真的到了这个时候!

答案 9 :(得分:0)

这是不可能的。

如果您将信息发送给他们以便他们可以看到,则无法阻止他人获取信息。用户可以简单地查看HTML的来源并查看文本的内容并从那里复制它,并且您无法阻止它们。

在JavaScript中实现任何内容都是完全无效的,因为任何人都可以在浏览器中禁用JavaScript并绕过它,并且最终只会让用户烦恼。

阻止某人从网页复制文本的唯一方法是首先不要将其放在网页上。

答案 10 :(得分:0)

如果您通过图像或闪存呈现内容,并阻止了保存的能力,因为这可能是一种解决方案。我发现了一些您可能认为有用的资源来保护图片here以及一些有关“阻止”打印屏幕here的信息。

不幸的是,您的问题没有简单的解决方案,因为一旦内容传递给用户,他们就可以最终控制信息(谁阻止他们拍摄网站的实际图片?)。

答案 11 :(得分:0)

好吧,PHP与它无关,就像服务器端一样。你可能可以在javascript中做一些事情(禁用右键单击相当容易;也可以禁用文本突出显示),但是很容易解决这个问题。如果失败了,用户可能会查看源代码,但也可以加密:

document.write(base64decode('encoded string containing entire HTML document'));
坦率地说,这既烦人又毫无意义。可以以某种方式获取用户可用的任何内容。即便闪光也不能幸免。 (有一些浏览器插件可用于从闪存中取出视频。)

答案 12 :(得分:0)

您可能还希望查看目标受众,以帮助确定您希望如何使其变得更难(因为您无法真实地阻止它)。

对于简单的用户,只是禁用右键单击可能足以阻止它。稍微多做一些工作就像其他人建议并创建一个图像一样。使用图像,您可能希望在DIV上设置背景图像,因为您可以使用IMG标记轻松地将图像拖动到桌面上,或者在任何地方。从那里你可以使用Flash,或其他一些RIA,甚至可能使用SVG / VML ..

任何知道如何进行屏幕截图的人都会缩小你可以实现的目标:(

答案 13 :(得分:0)

  <script type="text/JavaScript">
  //script to bar copying of website contents
  function killCopy(e){
      return false  
  }
  function reEnable(){
      return true
  }
  document.onselectstart=new Function("return false"){
       if (window.sidebar){
           document.onmousedown=killcopy
           document.onclick=reEnable
       }
  };
  </script>