Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php “如何禁用或加密”;“查看来源”;我的网站_Php_Javascript - Fatal编程技术网

Php “如何禁用或加密”;“查看来源”;我的网站

Php “如何禁用或加密”;“查看来源”;我的网站,php,javascript,Php,Javascript,是否有任何方法可以禁用或加密我的站点的“查看源代码”,以便保护我的代码?我认为没有任何方法可以做到这一点。因为如果您加密浏览器如何理解HTML?否。浏览器没有提供HTML/javascript禁用该功能的功能(谢天谢地)。此外,即使您可以,HTML仍然以纯文本形式传输,以供用户阅读 您所能做的最好是以某种方式模糊HTML/javascript,使其难以阅读。但调试器喜欢并将从DOM中重建它,使其易于阅读,因此您希望加密HTML源代码。您可以使用一些javascript工具对其进行加密,但要注意,

是否有任何方法可以禁用或加密我的站点的“查看源代码”,以便保护我的代码?

我认为没有任何方法可以做到这一点。因为如果您加密浏览器如何理解HTML?

否。浏览器没有提供HTML/javascript禁用该功能的功能(谢天谢地)。此外,即使您可以,HTML仍然以纯文本形式传输,以供用户阅读


您所能做的最好是以某种方式模糊HTML/javascript,使其难以阅读。但调试器喜欢并将从DOM中重建它,使其易于阅读,

因此您希望加密HTML源代码。您可以使用一些javascript工具对其进行加密,但要注意,如果用户足够聪明,他将始终能够按照浏览器应该做的事情对其进行解密:运行javascript并查看生成的HTML

编辑:请参见此HTML扰码器作为如何对其进行加密的示例:

编辑2:还有。。有关如何解密,请参见此示例:)


简而言之,html是一种开放的文本格式。如果页面呈现,人们将能够看到您的源代码。您可以使用javascript禁用右键单击,这将在某些浏览器上起作用,但是任何想要使用您的代码的人都知道如何避免这种情况。您还可以让javascrpit在存储编码后发出html,这将对开发、可访问性和加载速度产生不良影响。毕竟,任何安装了firebug的人仍然能够看到html代码


你的html也有很多价值,你真正的ip存在于你的服务器代码中,它在你的服务器上安全可靠。

你不能。浏览器需要源来呈现页面。如果用户希望,用户可以让浏览器显示源代码。Firefox还可以显示页面的DOM。您可以混淆源,但不能加密或锁定用户


还有,为什么您要这样做,这似乎是一件蹩脚的事情:p

您不能真正禁用它,因为最终浏览器仍需要读取和解析源代码才能输出

如果源代码中有如此重要的内容,我建议您将其隐藏在服务器端

即使您对HTML源代码进行加密或模糊处理,最终我们仍然可以对其进行评估和查看。以Firebug为例,无论发生什么,我们都可以看到源代码

如果你正在销售PHP软件,你可以考虑。

费罗,

你的问题没有多大意义。“查看源代码”显示的是HTML源代码,如果您对其进行加密,用户(和浏览器)将无法再阅读您的内容

如果您想保护您的PHP源代码,那么有如下工具。它将加密您的源代码,并使其难以反向工程

如果你想保护你的JavaScript,你可以缩小它,例如。它不会阻止用户使用您的代码,因为与用户一样,浏览器需要能够以某种方式读取代码,但至少会使任务更加困难

如果您更担心用户隐私,则应使用以确保在连接时对敏感信息进行加密

最后,从技术上讲,可以对页面内容进行加密并使用JavaScript对其进行解密,但由于这依赖于JavaScript,因此经验丰富的用户可以在几分钟内解决这一问题。此外,所有这些问题都会出现:

  • 搜索引擎将无法索引您的页面
  • 禁用JavaScript的用户将看到加密页面
  • 它的性能可能会非常差,这取决于您拥有的内容量

所以我不建议你使用这个解决方案

是的,您可以通过javascript动态呈现整个网站,javascript将被加密/打包/模糊处理,就像没有明天一样。

这从根本上说是不可能的。正如(几乎)每个人都说过的那样,用户的web浏览器需要能够读取html和Javascript,浏览器的存在是为了服务于用户,而不是你

这意味着,无论你做什么,最终用户的机器上都会有类似的东西:

<html> 
  <body> 
    <div id="my secret page layout trick"> ... 
    </div>
  </body>
</html>

... 
因为除此之外,没有任何东西可以显示给用户。如果客户端存在这种情况,那么您就失去了对它的控制。即使你设法说服了地球上的每一家浏览器制造商,不要通过“查看源代码”选项提供这些内容——你知道,这是不可能的——文本仍将存在于该用户的机器上,并且有人会想出如何访问它。而这永远不会发生,浏览器的存在永远是为了先为用户服务。(希望如此)

同样的情况也适用于所有Javascript。让我再说一遍:您发送给用户的任何内容都不是该用户的安全或机密信息。通过Javascript进行加密是愚蠢的,不能在任何有意义的意义上工作

(事实上,Flash和Silverlight提供了二进制文件,但我不认为它们是加密的。因此,从中获取数据至少是令人恼火的。)

正如其他人所说,对用户保密的唯一方法就是不要把它交给他们:把逻辑放在服务器上,确保它永远不会被发送。例如,您用PHP(或Python/Ruby/Perl/Java/C…)编写的所有代码都不应该被您的用户看到。这就是为什么谷歌仍然有业务。他们给你的东西和他们从来没有给你的东西相比,根本就没意思。而且,因为他们意识到这一点,他们试图让他们发送给你的大多数东西尽可能地公开有用。因为它是基础设施——Terrabyte大型地图数据库和寻路软件,而不是你可以点击和拖动的时髦地图——你正在用你的隐私来换取

另一个例子