Laravel 重定向错误

Laravel Redirect Error

我在白屏上发布任何类型的表单 1 或 2 秒时出现以下错误

Redirecting to http://sitename.com/laravel/public/something/something

然后页面成功重定向到我请求的页面。

哪个不好

我一直在使用以下重定向方法

Return Redirect::action('SampleController@somefunction');

Return Redirect::to('something/something');

Return Redirect::route('something');

以上所有都给我同样的错误

通常发生这种情况是因为有一些输出 以及 重定向,因此 Laravel 无法发送 HTTP header 以重定向浏览器(因此必须发送一个页面,其中包含一些 Javascript 进行重定向)。这就是您看到该页面的原因。至于可能导致它的原因,很难说,因为它可能由于多种原因而发生。不过,这里有一些常见原因:

  • PHP 文件在 PHP 标签之外有不应该有的空白(类,等等),尤其是在文件的开头和结尾(如果您在文件末尾使用 ?> 结束标记)。 UTF-8 字节顺序标记也可以做到这一点,尽管现在文本编辑器必须使用没有 BOM 的 UTF-8。
  • 路由过滤器中的某些东西(之前或之后)意外输出了一些东西
  • /public/index.php 中的一些调试代码或任何输出内容的代码
  • 输出缓冲以某种方式在您的 PHP 安装中关闭了?

Laravel 确实尝试将大量执行包装在输出缓冲函数中,以帮助减轻输出某些内容并干扰其发送 HTTP headers 的能力的可能性,但事实并非如此完美,因为它不是从一开始就 运行。