如何防止用户从网站复制内容

时间:2011-05-31 07:01:41

标签: php javascript jquery html

有没有办法阻止用户从网站复制内容并在视图源中显示加密代码?

我知道技术人员总会找到一种方法,但如果它阻止普通用户就可以了。

8 个答案:

答案 0 :(得分:5)

查看ionCube HTML Obfuscator: -

http://www.ioncube.com/html_encoder.php

从文本内容开始,请尝试以下代码: - Live Demo(不支持IE)

<script type="text/javascript">
document.oncopy = function(){
    var bodyEl = document.body;
    var selection = window.getSelection();
    selection.selectAllChildren( document.createElement( 'div' ) );
};
</script>

答案 1 :(得分:4)

鉴于您使用的标签:

  • PHP是服务器端代码,您的最终用户永远不会看到您的代码
  • 无法从最终用户隐藏HTML
  • Javascript和jQuery也不能隐藏,但可以通过“缩小”代码来混淆它们。通常,这是使用JSmin(在http://jscompress.com/
  • 提供的在线工具等程序完成的

答案 2 :(得分:2)

不,没有。用户将始终能够访问发送到浏览器的数据。加密在这里没有用,因为必须在某个时刻解密数据才能在屏幕上显示。

答案 3 :(得分:2)

不,没有。

即使你可以加密源代码,浏览器仍然需要创建可以重新序列化的DOM结构  作为可读的HTML。

答案 4 :(得分:1)

对于一个laic用户,您可以阻止右键单击事件,ctrl + c,ctrl +在窗口上插入键事件。但是对于更高级的用户,如果使用HTML,则无法阻止复制内容。 Flash会解决它,但谁仍然使用flash作为内容,对吧?

答案 5 :(得分:1)

对于图像,使用清晰元素覆盖图像,这样您就不能直接右击和复制将停止一些用户。

答案 6 :(得分:0)

可以使用flash或adobe对象(.swf / .pdf)来显示内容

答案 7 :(得分:0)

您可以使用这些tags ..

//$("body").css("-webkit-user-select", "none");
//$("body").css("-moz-user-select", "none");
//$("body").css("-ms-user-select", "none");
//$("body").css("-o-user-select", "none");
//$("body").css("user-select", "none");