Php 动态获取网站根URL/基本URL
我不知道这是否可能,但让我解释一下我的问题 我正在和多个开发人员一起做一个项目。我们都有自己的开发环境。对于某些人来说,我们正在构建的网站位于其文档根目录的一个或多个子文件夹中,例如Php 动态获取网站根URL/基本URL,php,document-root,Php,Document Root,我不知道这是否可能,但让我解释一下我的问题 我正在和多个开发人员一起做一个项目。我们都有自己的开发环境。对于某些人来说,我们正在构建的网站位于其文档根目录的一个或多个子文件夹中,例如 /library/webserver/htdocs/project/website 其他人在站点上有不同的路径,如 /htdocs/website 当找到一种获取文档根目录(包括php文件等)的通用方法时,没有问题。但我还想找到网站的根URL,在第一种情况下,这意味着: http://localhost/pro
/library/webserver/htdocs/project/website
其他人在站点上有不同的路径,如
/htdocs/website
当找到一种获取文档根目录(包括php文件等)的通用方法时,没有问题。但我还想找到网站的根URL,在第一种情况下,这意味着:
http://localhost/project/website/
在第二种情况下
http://localhost/website/
在生产中,同样的方法应该简单地返回
http://domain.tld.
有没有一种很好的方法可以做到这一点,而不必手动定义路径?谢谢大家! 我想你在寻找: “HTTP_主机” 主机的内容:来自当前请求的头(如果有)
我最终得到了一个类似这样的函数。它使用当前服务器的文档根目录,但随后去掉了网站根目录名之前的部分-这实际上是目录名的目录名如果此函数位于上面一步中:
$dirName = dirname(dirname(__FILE__) . ".." . DIRECTORY_SEPARATOR);
$dirName = str_replace('\\', "/", $dirName);
$base = str_replace($_SERVER['DOCUMENT_ROOT'], "", $dirName);
文档根目录为/etc/webserver/documents/
,文档根目录下的网站位于/projects/website1
,如果此脚本位于/projects/website1/somreDir/someFile.php
中,它将返回/projects/website1
希望这能帮助别人 不完全是。HTTP_ROOT为我提供了web服务器根。我需要的是web服务器http根,然后将路径添加到当前项目根。另外-由于某些原因,当我在本地运行时,$\u服务器['HTTP\u ROOT']不包含任何内容。。。