Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.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 标题(“位置:/”);重定向适用于本地主机,但不适用于远程服务器_Php_Apache_Localhost - Fatal编程技术网

Php 标题(“位置:/”);重定向适用于本地主机,但不适用于远程服务器

Php 标题(“位置:/”);重定向适用于本地主机,但不适用于远程服务器,php,apache,localhost,Php,Apache,Localhost,重定向在本地主机上工作得很好,但在远程服务器上不工作。 也许使用$\u服务器更好? 即使我选择与使用重定向的文件位于同一目录中的文件,此重定向也不会工作。 希望您能帮助我:)来自: HTTP/1.1需要一个绝对URI作为»位置:包括方案、主机名和绝对路径的参数,但有些客户端接受相对URI。您通常可以使用$\u服务器['HTTP\u HOST'],$\u服务器['PHP\u SELF']和dirname()从相对URI中生成绝对URI: 我认为您需要一个空格:标题(“位置:/”,不过,我认为您最好

重定向在本地主机上工作得很好,但在远程服务器上不工作。 也许使用
$\u服务器更好?
即使我选择与使用重定向的文件位于同一目录中的文件,此重定向也不会工作。
希望您能帮助我:)

来自:

HTTP/1.1需要一个绝对URI作为»位置:包括方案、主机名和绝对路径的参数,但有些客户端接受相对URI。您通常可以使用
$\u服务器['HTTP\u HOST']
$\u服务器['PHP\u SELF']
dirname()
从相对URI中生成绝对URI:


我认为您需要一个空格:
标题(“位置:/”
,不过,我认为您最好在实际的URL中进行替换。我似乎记得在某个地方读到过,这是一个缺陷或bug,
header(“Location:mypage.php”)
根本不起作用。要重定向到服务器根目录,可以使用header('Location:'。$\u server['HTTP\u HOST')@JaredFarrish:对不起,它不起作用。如果我认为它是在位置标题中使用
/
的“问题”的答案,我会将它作为答案发布。解决这个问题的简单方法是放弃这种技术,使用真正的路径。我得到了你的代码,我的代码工作得非常完美。我的if..else结构有问题。重定向在那里不起作用
if (condition)
{
#lol. Some code here
}
else
{       
header("Location:/");//i'm trying to redirect to the root
}
<?php
/* Redirect to a different page in the current directory that was requested */
$host  = $_SERVER['HTTP_HOST'];
$uri   = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'mypage.php';
header("Location: http://$host$uri/$extra");
exit;
?>