在使用HttpException
手动抛出异常时,希望跳转到自定义的错误页面,官方的文章中是这样描述的。
可以使用\think\exception\HttpException
类来抛出异常
// 抛出 HTTP 异常 throw new \think\exception\HttpException(404, '异常消息', null, [参数]);
一旦抛出了HttpException
异常,可以支持定义单独的异常页面的模板地址,只需要在应用配置文件中增加:
'http_exception_template' => [ // 定义404错误的重定向页面地址 404 => APP_PATH.'404.html', // 还可以定义其它的HTTP status 401 => APP_PATH.'401.html', ]
然而如果你这些都做完了,关闭调试模式,你会发现还是跳转到官方自定义的页面上去了,并且你发现http状态码是500
,这是代码有问题啊,我抛出的是404
啊。
然后打开log日志,你会发现果然报错了。
[ er