yii2关闭debug后return redirect()不能跳转,服务器报500错误的解决办法

转载 2016年08月28日 15:56:22
问题:yii2中关闭debug后return $this->redirect($url);不能跳转,服务器报500错误。


问题分析:

1.必须 return 才能让$this->redirect($url);立马跳转, 而不执行后续代码;
2.redirect() 中指定了响应的 http status code,默认是302;
3.当执行$this->redirect($url)时,不管是否在后面加return false 、return true都没有用,还是继续执行完代码。使用header("Location:$url");exit;可以解决此问题,但是,这不是yii2的逻辑,并不完美。


解决办法:
【本文由php_sir的博客 http://blog.sina.com.cn/phpsir原创,未经授权禁止转载】
1.在正常情况下,使用 return $this->redirect($url);
2.在解决方案1不生效时,用$this->redirect($url);Yii::$app->response->send();
3.在解决方案2不生效时,用$this->redirect($url);Yii::$app->end();


总结:

用Yii::$app->end();、Yii::$app->response->send();不管在actionXXX还是init方法都能终止代码,而return只能在action终止代码,是因为在init()里仅仅是代码的执行,return只是代码返回。

yii2->验证码问题(Yii2.0 ajax验证,验证码报错,load方法)

作为一个yii2新手来说,对于验证码真是又爱又恨,框架自带的验证码解决了自写验证码的烦恼,然而还是有些小问题。 需求:登陆输入:用户名、密码、验证码 弹框登录+ajax验证 1、LoginForm...
  • gc258_2767_qq
  • gc258_2767_qq
  • 2017年04月27日 11:38
  • 713

thinkphp5 配置在sae,axios请求出现500的解决方法!

thinkphp5 配置在sae,axios请求出现500! 但在Network中是有数据请求到的。 在直接访问php的function 也是可以正常渠道数据,但一瞬间也出...
  • qq_32486147
  • qq_32486147
  • 2017年06月11日 09:25
  • 688

良好的异常展现界面<500.jsp>

Web编程中,时常会出现后台报错的现象;原始界面,通常是这样展现异常的:那么,如何才能自定义一个更加良好的界面,人性化,用户体验好的界面,就值得探索;...
  • u010137431
  • u010137431
  • 2015年12月27日 02:09
  • 2192

【云服务器】Apache+php环境,php调用Mysql报错HTTP 500,telnet可访问数据库

前些天遇到的问题,找了一下午终于解决了,
  • GeekLei
  • GeekLei
  • 2014年07月03日 23:43
  • 1799

Servlet配置自定义404,500页面

当浏览器请求web服务器(容器)时候,访问路径不存在,那么web容器会自动gien...
  • Mooner_guo
  • Mooner_guo
  • 2014年11月14日 11:09
  • 1334

php连接不上mysql 出现HTTP 500 内部服务器错

企鹅千万 这个有人说把 php_mysql.dll ,libmysql.dll php.ini文件放到c盘  自己尝试后发现不是这个原因,报错的原因是没有和相应的数据库dll文件关联起来 1...
  • hll174
  • hll174
  • 2015年03月22日 16:53
  • 5066

配置web404,500等异常页面

转载博客地址:http://blog.csdn.net/kalision/article/details/11116047 web开发中异常信息是很重的信息,对开发人员是其相...
  • zhshchilss
  • zhshchilss
  • 2016年11月02日 14:43
  • 270

HttpWebRequest.GetResponse出异常时的解决办法

参考文章 http://www.cnblogs.com/cresuccess/archive/2009/12/09/1619977.html 第一种异常:WebException: 服务器提...
  • atceedsun
  • atceedsun
  • 2015年04月03日 15:36
  • 6895

LNMP配置+yii环境

Ubuntu14.04 + Nginx1.4.6 + MySQL5.5 + PHP5.5.9 Yii1.1.16隐藏index.php
  • beikejinmiao
  • beikejinmiao
  • 2015年07月18日 14:35
  • 1168

【ITOO技术篇】——网络请求404,500和200怎么回事?

最近生无可恋的人儿比较的多。生无可恋反过来想,就是收获大大!不接手项目根本不知道还有那么多的bug需要调试,不接手项目根本就不知道那么多调bug的方法。ITOO新生入学系统,带我走向了不一样的远方。 ...
  • zhang18330699274
  • zhang18330699274
  • 2016年08月02日 22:22
  • 727
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:yii2关闭debug后return redirect()不能跳转,服务器报500错误的解决办法
举报原因:
原因补充:

(最多只允许输入30个字)