所以,我做了一个简单的PHP登录,但当我尝试像这样重定向时:
const BASE_URL = 'http://192.168.1.102:8080/api';
似乎它没有做任何事情,但在我刷新页面后我登录了。$path = $_SERVER["DOCUMENT_ROOT"];
header("Location: $path/admin/index.php");
它有效。
有人可以向我解释一下吗?
聚苯乙烯。抱歉我的英文不好
答案 0 :(得分:1)
$_SERVER["DOCUMENT_ROOT"];
返回/var/www/html/yourfolder/
之类的路径,但您必须重定向到website.com/yourfolder/
或localhost/yourfolder/
。
答案 1 :(得分:1)
您是否尝试过打印$ path的值?
$ path的值相对于实际文件位置
e.g。 $path = '/c/inetpub/sites/example/main/'
您可能想要'/c/inetpub/sites/example/'
或'/c/inetpub/sites/example/main/..'
答案 2 :(得分:1)
标题被发送到浏览器,因此它不是内部服务器操作。由于它不是内部重定向,因此您不处理内部路径。使用DOCUMENT_ROOT
时,您将获得文件所在目录的内部服务器路径。
如果您想将网站的根目录作为网址引用,请使用/
。
header("Location: /admin/index.php");
header("Location: /"); # go to homepage, for example
您的..
之所以有效,是因为您可能位于子目录中,..
已转换为admin
所在的父目录。