Yii2重定向导致空白页面

时间:2016-01-16 17:34:55

标签: php redirect yii2 shared-hosting

是否有任何服务器/托管设置可能导致Yii2中的简单重定向无效?

例如:

function actionIndex(){
    return $this->redirect('other-page');
}

此代码以空白页结束,不显示错误或消息(错误报告已打开),响应代码为200(尽管Yii2调试器显示302)。我网站上的所有内容都运行良好,但只要代码到达任何->redirect(),它就会以空白页结束。

这只发生在我的客户端共享主机上(在我的本地机器和开发共享主机上一切正常)。 Yii2运行时日志不显示任何错误,也没有显示我的主机允许我访问的服务器日志。

3 个答案:

答案 0 :(得分:3)

原来这是标准的白页错误:php文件开头的新增空白行。 我逐行浏览了框架文件。当我评论if(headers_sent()) {return;} Yii终于抛出异常时,只是让我发现我的一个配置文件在文件的开头有额外的新行。删除它解决了问题。

答案 1 :(得分:0)

确保在发送重定向响应之前没有发送标头。

同时检查您的php文件编码,如果您使用的是UTF-8,请确保它的UTF-8编码没有BOM。

答案 2 :(得分:-2)

将参数放在数组中,并带有绝对路径:

return $this->redirect(['/other-page']);

检查配置中的路由,两种环境是否相同?