是否可以在laravel 5中发生MethodNotAllowedHttpException时将用户重定向到主页,或者我应修改哪个模板以编辑MethodNotAllowedHttpException的显示
答案 0 :(得分:5)
打开app/Exception/Handler.php
在这里你会找到一个渲染方法。
在渲染方法中,在return statement
:
if($e instanceof MethodNotAllowedHttpException)
return redirect('/');
不要忘记先导入例外:
use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
答案 1 :(得分:3)
rfc2616 10.4.6 405 Method Not Allowed
如果您指定.env
,请在Laravel中
APP_ENV=production
APP_DEBUG=false
并创建
resources/views/errors/405.blade.php
每次405
代码出现时都会呈现该文件,我认为重定向不可能,但您可以随时将一些javascript添加到405错误模板中,以便重定向用户。
setTimeout(function(){ window.location.href='/'; },10000);
答案 2 :(得分:1)
在成功捕获MethodNotAllowedException之前,您需要先导入正确的名称空间。
use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
来源:https://www.npmjs.com/package/cordova-plugin-splashscreen
答案 3 :(得分:0)
您可以使用ExceptionHandler
打开app / Exception / Handler.php 改变渲染方法
public function render($request, Exception $e)
{
if ($e instanceof ModelNotFoundException)
{
return \Redirect::to('/');
}
return parent::render($request, $e);
}