Apache2 web服务器上的Unix高级文件权限

Apache2 web服务器上的Unix高级文件权限,apache2,php,permissions,acl,Apache2,Php,Permissions,Acl,我有3个包含PHP脚本的文件夹: - core - custom_modules_1 (cm1) - custom_modules_2 (cm2) 核心由Apache执行,包括来自cm1或cm2的require_once文件。它从不同时包括cm1和cm2 但是当cm1包含一个来自cm2的文件时,问题就出现了,这是应该防止的,但是如何防止呢 我正在使用cPanel运行VPS CentOS服务器,因此ACL可能不是一个选项,因为它可能会破坏cPanel。这无法通过权限解决。您需要在每个脚本中添加

我有3个包含PHP脚本的文件夹:

- core 
- custom_modules_1 (cm1)
- custom_modules_2 (cm2)
核心由Apache执行,包括来自cm1或cm2的require_once文件。它从不同时包括cm1和cm2

但是当cm1包含一个来自cm2的文件时,问题就出现了,这是应该防止的,但是如何防止呢


我正在使用cPanel运行VPS CentOS服务器,因此ACL可能不是一个选项,因为它可能会破坏cPanel。

这无法通过权限解决。您需要在每个脚本中添加sentinel代码,以防止交叉包含。

根据您的具体要求,有多种方法可以解决此问题,但具体细节在文章中并未明确

根据脚本从何处获取模块,使用不同的包含路径,并将自定义_模块_1或自定义_模块_1作为路径的一部分

使用open_basedir限制对特定目录的访问

对不同的文件集使用不同的所有权,并使用SUPPP强制执行访问权限


感谢您的回答,但我唯一能够强制执行通缉限制的方法是使用php auto_prepend_file附加一个文件,该文件在包含的每个php文件中执行某些检查

我觉得这是一个与编程相关的问题。