重定向和标头不起作用

时间:2015-11-02 13:58:59

标签: php laravel redirect

以下代码显示“111”和“222”。但是不会将我重定向到任何地方。我现在能做什么?

<?php
echo "111";
header("Location: http://www.google.com");
echo "222";
return Redirect::to('http://www.google.com'); 
echo "333";
?>

3 个答案:

答案 0 :(得分:1)

两件事......

您需要在标题后添加exit(“位置:...”) 例如:

header("Location: http://www.google.com");
exit;

但更重要的是......如果您已使用echo写入输出缓冲区,则标题不会重定向。

答案 1 :(得分:0)

在设置标头标记之前,您无法输出任何内容,因此请删除echo语句并在标题后退出脚本:

header("Location: http://www.google.com");
exit;

答案 2 :(得分:-1)

由于您已将数据发送到客户端(echo),因此无法正常工作。在回显任何内容之前发送标题,或者像这样缓冲它:

ob_start();
echo "111"; //Note: You're missing a semicolon here
header("Location: http://www.google.com");
echo "222";
$obj = Redirect::to('http://www.google.com'); 
echo "333";
ob_flush();
return $obj;

To Continue Reading... 希望这有帮助!