$_SERVER['DOCUMENT_URI'] 为空

$_SERVER['DOCUMENT_URI'] is empty

我迁移了服务器,现在这个变量 $_SERVER['DOCUMENT_URI'] 停止工作了,我该怎么办?

我暂时使用这个解决方案:$uri_parts = explode('?', $_SERVER['REQUEST_URI'], 2)[0];但是有很多代码使用了$_SERVER['DOCUMENT_URI'],我不想改变所有这些。

据我所知,

DOCUMENT_URI 不是标准变量。不管怎样,关于 $_SERVER superglobal 有两点需要注意:

  • 它不是只读的。
  • 它从多个来源填充,包括环境变量。

您可以通过您喜欢的任何方式设置环境变量(例如,如果您碰巧使用 Apache,则 SetEnv directive)或简单地将您自己的值直接放入 PHP 变量中。