Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP共享对$#u SERVER[';DOCUMENT#u ROOT';]的托管解释_Php_Apache_Versioning_Document Root - Fatal编程技术网

PHP共享对$#u SERVER[';DOCUMENT#u ROOT';]的托管解释

PHP共享对$#u SERVER[';DOCUMENT#u ROOT';]的托管解释,php,apache,versioning,document-root,Php,Apache,Versioning,Document Root,我一直在使用一个PHP脚本对文件进行自动版本控制,在这个脚本中,它使用$\u SERVER['DOCUMENT\u ROOT']获取定位文件的路径 它在大多数情况下都能工作,但每隔一段时间,服务器(共享主机)似乎会误解路径 它应该始终是:/home/username/public\u html 但有时它会显示为:/usr/local/apache/htdocs,然后出现错误 这是脚本中使用它的行: $ver = '.'.filemtime($_SERVER['DOCUMENT_ROOT'].$u

我一直在使用一个PHP脚本对文件进行自动版本控制,在这个脚本中,它使用
$\u SERVER['DOCUMENT\u ROOT']
获取定位文件的路径

它在大多数情况下都能工作,但每隔一段时间,服务器(共享主机)似乎会误解路径

它应该始终是:
/home/username/public\u html

但有时它会显示为:
/usr/local/apache/htdocs
,然后出现错误

这是脚本中使用它的行:

$ver = '.'.filemtime($_SERVER['DOCUMENT_ROOT'].$url).'.';
有没有其他方法来获取网站根目录而不是上面一行中的服务器?比如在域或子域的顶部,比如定义重写基的位置


非常感谢您的输入。

在脚本中明确引用它可以解决问题,只要默认情况下文档根不发生更改:

  $ver = '.'.filemtime('/home/username/public_html/'.$url).'.';

您应该始终能够访问此目录,因为共享主机结构通常不会更改(除非他们想失去客户!)。让他们知道这件事正在发生,并询问原因。

如果这件事变为
/usr/local/apache/htdocs
,您可能需要尽快与您的托管公司联系。这可能是主机提供商更改了某些内容,或者某些内容配置非常错误。总之,跟你的主机提供商谈谈。谢谢你的意见,是的,我确实让他们知道了。我使用Bluehost,当时我正在与客户服务部交谈,解释他们使用的任何结构都会干扰试图检索根的编程。他们只是继续把责任归咎于脚本,并躲在“不帮助编码”的背后。碰巧知道是否有其他PHP函数在获取路径时不会深入到那么深的地方?您可以尝试这里提到的方法/答案:-其中一种是相对的。我使用的正确吗?我尝试了这个方法,但它破坏了脚本:
$ver\u id='..filemtime(dirname(\uu FILE\uu)。$ver\u url)。'