让Linux用户能够包含PHP代码但无法查看它?

时间:2015-12-22 13:48:27

标签: php linux

用户 A 有一些PHP库文件。用户 B 需要访问该库。是否可以允许用户 B 能够包含PHP文件但无法查看源代码?

用户 A 库条目文件为lib.php

用户 B 在他的start.php中使用lib.php,如下所示:

include path/to/lib.php;

但是,用户 B 将无法查看lib.php或其他任何类文件的内容。

这可能吗?

2 个答案:

答案 0 :(得分:1)

您正试图找到一种方法来做一些无法正常完成的事情。也许是一种hackish,绝对是肮脏的方式。

你真的应该考虑为你的应用程序编写一个包含所有逻辑的API。然后,您可以使用用户权限等处理其他所有内容,完全清洁和最先进的技术。

除了API开发人员之外,没有人可以查看代码,但每个人都可以根据用户权限使用它。

除了编写API之外,其他所有方法都可能难以处理,并且会导致更多问题。值得花时间。

答案 1 :(得分:1)

基本上你问的是不可能的。 PHP解释器需要能够读取文件才能包含它,如果PHP进程可以读取它,那么不受信任的用户可以编写一些代码来读取它并将其转储回来。

您有几个选择:

1)使用API​​。允许您保密代码,因为您只公开API。可能需要几天时间来实施(或者甚至可能不可能 - 不知道你在做什么就不可能说),所以可能不适合你的情况。

2)诋毁你的代码。那里有许多PHP代码阻塞器。它不会完全停止窥探,但它可能足以达到你的目的。

3)创建一个存根包含文件。如果您的库所包含的内容对于代码的运行并不是至关重要的,那么您可以为客户端编写一个简化的存根库来编写代码,然后在它们完成时将其替换为真实的。