我正在使用现有的PHP软件,该软件广泛使用__FILE__
魔术常量,需要引导程序文件,例如:
require dirname(__FILE__) . '/path/to/config.php';
现在我在运行此软件的同一台服务器上有几个网站。
所有网站都有文件的副本,它有效,但我想将“常用”文件(类,控制器等)集中到:
起初,我考虑过将“符号链接”用于“常用”文件,以及“特定”文件的简单文件夹:
config
classes -> /path/to/common/classes
controllers -> /path/to/common/controllers
...
...但问题是__FILE__
解析了符号链接
自PHP 4.0.2起,
__FILE__
总是包含已解析符号链接的绝对路径,而在旧版本中,它在某些情况下包含相对路径。
这意味着使用常量的所有东西都会解析相对于“常见”文件的pathes,这不是我想要的。
我知道我可以使用$_SERVER['SCRIPT_FILENAME]
,但我不想修改我正在使用的软件的代码,它将无法维护。
还有其他方法可以达到这个目的吗?
可能使用某种共享文件夹的虚拟机(每个网站一个)? (我根本不是专家)