Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel 5.1-实时网站上的错误视图,哪些视图或一个视图,以及如何实现?_Php_Error Handling_Laravel 5 - Fatal编程技术网

Php Laravel 5.1-实时网站上的错误视图,哪些视图或一个视图,以及如何实现?

Php Laravel 5.1-实时网站上的错误视图,哪些视图或一个视图,以及如何实现?,php,error-handling,laravel-5,Php,Error Handling,Laravel 5,我正在建立一个Laravel应用程序,一切都很好(据我所知),现在我想把网站公之于众 但是,我不知道如何实现错误/未授权请求的自定义消息 我知道我可以将视图放在/resources/views/errors/文件夹中,如: 404.blade.php 503.blade.php 。。。等等 但是,我不确定应该构建哪些错误视图,或者是否有更简单的方法为所有错误创建一个主视图。并没有理由通知用户发生了什么错误,但若可以很容易地做到,我会这样做 以下是我刚才在谷歌上搜索到的所有错误列表: 以下是La

我正在建立一个Laravel应用程序,一切都很好(据我所知),现在我想把网站公之于众

但是,我不知道如何实现错误/未授权请求的自定义消息

我知道我可以将视图放在/resources/views/errors/文件夹中,如:

404.blade.php
503.blade.php

。。。等等

但是,我不确定应该构建哪些错误视图,或者是否有更简单的方法为所有错误创建一个主视图。并没有理由通知用户发生了什么错误,但若可以很容易地做到,我会这样做

以下是我刚才在谷歌上搜索到的所有错误列表:

以下是Laravel 5.1错误文档:

我尝试更改文件/app/Exceptions/Handler.php及其函数

/**
 * Render an exception into an HTTP response.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  \Exception  $e
 * @return \Illuminate\Http\Response
 */
public function render($request, Exception $e)
{
    return parent::render($request, $e);
}

但这只会返回空页


谢谢。

如果有人在这里遇到同样的问题,我将把这个作为部分答案

答案不会将所有错误重定向到同一页面,但会处理大部分错误,据我所知

将这些文件添加到
/resources/views/errors/
文件夹:

401.blade.php-如果用户未被授权访问该网页(当您使用某种用户身份验证时),将显示该页面

404.blade.php-如果用户写入了您在/app/Http/routes.php文件中未声明的url,则将显示此页面

503.blade.php-当您的站点关闭时,即运行
php artisan down
命令时,将显示此页面

还有一个错误页面我不知道如何处理,最好说,我不知道它的错误号。它显示了当用户试图访问不存在的模型实例时(我不知道这里正确的术语,所以请纠正我)。例如:;如果用户试图访问
yourwebsite.com/articles/123
,但您的数据库中没有带有该id/slug的文章,您仍然会收到一条
whoops…
消息


我对这个解决方案并不完全满意,因为可能还有其他我无法产生的错误,但这是我拥有的最好/唯一的解决方案。

我在这里出错了吗,所以这就是没有答案的原因?我对这个
公共函数render($request,Exception$e){如果($e instanceof\illusted\Session\TokenMismatchException){return redirect()->back()->withInput()->with('token',csrf_token());}return parent::render($request,$e);}
/**
 * Render an exception into an HTTP response.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  \Exception  $e
 * @return \Illuminate\Http\Response
 */
public function render($request, Exception $e)
{
    return view('errors.allerrors');  // only this line is changed
}