【发布时间】:2016-01-21 08:17:16
【问题描述】:
所以有这个问题,我们有一些运行 apache 服务器的硬件设备,一些较旧的运行 1.3 和较新的运行 2.X。我们正在更新一些 html/php 内容以及在我们的包含中使用相对路径的位置
include_once("../stuff/other_file.php")
这在 2.x apache 服务器上工作正常,但在 1.3 服务器上它返回文件未找到错误(即使文件存在),我尝试将 include_path 设置为根目录但它仍然没有工作。
像这样设置 include_once 起作用的是
include_once($_SERVER['DOCUMENT_ROOT']."/stuff/other_file.php");
这两种方法都可以正常工作,但问题是这个系统上有很多包含包含的文件,这需要几天时间才能完成并修复所有问题。
那么为什么这在 apache 1.3 下不起作用?
【问题讨论】:
-
始终使用绝对路径。您可以使用
dirname(__FILE__)获取目录的当前文件路径。 -
@CharlotteDunois 好吧,我之前没有参与过这个项目,现在为时已晚,我现在需要检查 1000 多个文件并在任何地方写绝对路径吗?