由于服务器设置,无法在PHP中获取正确的路径

时间:2015-07-23 10:56:54

标签: php path server

我不是服务器方面的专家,我的一个朋友想要使用我写的一些PHP脚本,但是他的服务器有问题,我无法找到解决方法。

基本上问题在于生成文件路径。

在我的脚本中,我使用以下变量来获取路径:

$path = "/template/"; // path to the template folder
$baseURL = $_SERVER['DOCUMENT_ROOT'].$path;

然后我将我的页面包含在这样的例子中:

include($baseURL."scripts/functions.php");

在我的服务器上,这很好用,当我尝试回显baseURL参数时,我得到了这个:

/data/web/virtuals/104571/virtual/www/template/

但是,在我朋友的服务器上,它只会抛出"PHP Fatal error: Call to undefined function" - because I checked and the functions.php is not being loaded,

当我尝试在我朋友的服务器上回应baseURL时,我什么都没得到。

所以我尝试查看phpinfo(),有趣的是,我根本找不到DOCUMENT_ROOT,路径很奇怪,PHP错误显示:

PHP Fatal error: Call to undefined function convertT() in H:\webspace\hostings\kocher.es\hosting\www\meteotemplate\index.php on line 14

因为我真的不懂服务器,所以我不知道这意味着什么,为什么它有H:/驱动器,更重要的是,如何解决这个问题....

以下是显示的phpinfo()http://kocher.es/meteotemplate/

如果有人知道如何解决这个问题,我将非常感谢,谢谢。

3 个答案:

答案 0 :(得分:0)

尝试__DIR__

示例:

$basePath = __DIR__;
$templatePath = $basePath."/template/"; // path to the template folder

include($templatePath."/scripts/functions.php");

__DIR__将返回文件基目录及其在不同文件中的不同,这意味着您必须小心何时将其称为

答案 1 :(得分:0)

您可以尝试使用dirname(),pathinfo()和realpath()来确定基本路径,而不是使用$ _SERVER ['DOCUMENT_ROOT']

答案 2 :(得分:0)

请在apache

的httpd.conf文件中添加文档根路径

尝试_SERVER [“CONTEXT_DOCUMENT_ROOT”]