Php $服务器[';文档根目录';]isn';行不通

Php $服务器[';文档根目录';]isn';行不通,php,Php,建议我在所有文件名的开头使用$\u SERVER['DOCUMENT\u ROOT'],以防我将页面移动到其他文件夹 但是,它不起作用。不知道为什么。我设置了一个测试页面,rajerpond.com/test5.php和一个简单的图像,并将以下内容 <?PHP $doc_root = $_SERVER['DOCUMENT_ROOT'] . "/"; $root = substr($doc_root, 1); ?> "<?PHP echo $root;?>main.cs

建议我在所有文件名的开头使用
$\u SERVER['DOCUMENT\u ROOT']
,以防我将页面移动到其他文件夹

但是,它不起作用。不知道为什么。我设置了一个测试页面,rajerpond.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" />

“main.css”
ads/blank_ad2.jpg/>
我想开始时的正斜杠可能把它弄糟了,所以我试着减去它,但也没用。在上面的例子中,前两幅图像不起作用,但第三幅图像起作用

知道我遗漏了什么吗?

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

它指向您的文件的物理路径,在您的情况下,这是不需要的;您希望指向公共可用的URL。因此,您可以尝试使用
dirname(\uu file\uu)

$root = dirname(__FILE__);
或者使用另一个
$\u服务器
变量,例如:

$root = $_SERVER['SERVER_NAME'];

不幸的是,这些都不起作用。不管怎样,对图像都不起作用。我知道主机名,所以我只是手动添加了它。但对于required()来说,这不起作用。我必须使用文档根。

您不想使用文档根。您想使用web根。服务器变量,如
$\u Server['document\u root']
$\u Server['WEB_ROOT']
并不总是保证由您的WEB服务器自动设置。因此使用它们时一定要小心。