$ _SERVER [' document_root']不起作用

时间:2015-05-22 13:42:30

标签: php

我建议我在所有文件名的开头使用$_SERVER['DOCUMENT_ROOT'],以防我将页面移动到另一个文件夹。

但是,它不起作用。不知道为什么。我设置了一个测试页面,praypond.com / test5.php,带有一个简单的图像并放下以下内容......

<?PHP 
$doc_root = $_SERVER['DOCUMENT_ROOT'] . "/";
$root = substr($doc_root, 1);
?>

"<?PHP echo $root;?>main.css"

<img src="home/wiseman/public_html/ads/blank_ad2.jpg" />
<img src="<?PHP echo $root;?>ads/blank_ad2.jpg" />
<img src="ads/blank_ad2.jpg" />

我想也许开头的正斜线可能会搞砸了,所以我试图减去它,但这也没有用。在上面的示例中,前两个图像不起作用,但第三个图像起作用。

知道我错过了什么吗?

2 个答案:

答案 0 :(得分:0)

DOCUMENT_ROOT is the

  

记录当前脚本正在其下执行的根目录,如服务器配置文件中所定义。

它指向文件的物理路径,在您的情况下不需要;您想指向公开的URL。因此,您可以尝试使用dirname(__FILE__)代替:

$root = dirname(__FILE__);

或使用其他$_SERVER变量,例如:

$root = $_SERVER['SERVER_NAME'];

答案 1 :(得分:0)

不幸的是,这些都没有奏效。反正不是图像。我知道主机名,所以我只是手动添加。但这并不适用于required()。我不得不使用document_root。