重定向不仅仅适用于在线服务器

Redirect not working only on a online server

因此,如果出现错误,我将从页面重定向。我将要重定向到的 URL 保存在我包含的配置文件中:require("config.php");

在 config.php 中,我存储了一个变量 $errorURL ,它被设置为 http://www.mywebsite.com/etc.php

在我的脚本中有以下代码:

header('Location:'.$errorURL.'?&error=dataNotSet');
die();

URL 中的错误变量是唯一发生变化的东西。

这在我的本地主机上运行良好,但在我的在线服务器上运行不正常。我在两台服务器上都使用 php 5.5。

如果我将代码的重定向部分(见上文)更改为:

header('Location:http://www.mywebsite.com/etc.php?&error=dataNotSet');
die();

有效。知道为什么会这样吗?

对,我想通了。

之所以没有任何效果是因为我的 configuration.php 文件开头有几个和标签。

确保脚本中包含的任何文件在重定向前仅包含纯 php!

通过 :

证明 $errorURL

将此行添加到您的代码顶部:

die($errorURL);

并从 $errorURL 变量的开头删除点。

可能是您的 $errorURL 变量有问题。

此致。