0

我正在尝试使用基于某些标准重定向访问者的 php 脚本。我在 apache 服务器上成功使用了该脚本,但是,我正在尝试使用 nginx 和 php-fpm,但相同的脚本似乎无法正常工作。

header("Location: $url");
exit();

奇怪的是,它似乎将我尝试重定向到的 URL 附加到原始 URL,因此它尝试转发的 URL 如下所示:

originaldomain.com/redirectdomain.com。

在将重定向域附加到原始 URL 而不是直接重定向到它之前,有没有人遇到过这种情况?

如果您需要任何进一步的信息来帮助,请告诉我。

4

3 回答 3

1

您需要确保 URLhttp://以它的开头,否则它认为它会指向您域上的路径,而不是重定向到实际站点。

于 2013-09-20T09:06:01.140 回答
0

$url 必须以 http:// 或 https:// 开头

if (strpos($url, 'http') === 0 ) {
    $newurl = $url;
} else {
    $newurl = "http://" . $url;
}

然后只需在您的标头请求中使用 $newurl :)

于 2013-09-20T09:05:53.183 回答
0

如果上面的答案还没有修复重定向,你需要在你的 php.ini 文件中检查 output_buffering 的开或关或设置限制。

output_buffering = 开

于 2015-09-08T07:34:04.643 回答