laravel - Http 异常 Laravel 5.6
问题描述
我有一个http异常的问题。实际上,我创建的 404 视图并没有出现。仅显示默认视图(当我在 url 中写入时http://127.0.0.1:8000/fr/sdfsdf
)。
我的视图显示图像、标题和错误原因、视图路径: resources/views/errors/404.blade.php
:
@extends('layout')
@section('title',trans('errors.404'))
@section('body')
<div class="container-fluid">
<div class="containe center_vertical_errors">
<div class="row">
<div class="col-xs-12 text-center" >
<h1 class="text-uppercase">{{trans('errors.404')}}</h1>
</div>
<div class="col-xs-12 logo-error">
<img src="{{asset('image/logo.png')}}" alt="logo" width="300" height="300" title="logo" class="img-responsive img-centre-horizontal"/>
</div>
<div class="col-xs-12 text-center reason-error" >
<p class="text-uppercase">{{trans('errors.reason404')}}</p>
</div>
</div>
</div>
</div>
@stop
处理程序的代码:
...
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
class Handler extends ExceptionHandler
{
...
public function render($request, Exception $exception){
if ($this->isHttpException($exception))
{
if($exception instanceof NotFoundHttpException)
{
return response()->view('errors.404', [], 404);
}
}
return parent::render($request, $exception);
}
}
路线代码:
Route::get('/', function () {return view('home/home');})->name('home');
Route::get(trans('routes.news'),'PublicationController@index')->name('news');
Route::post(trans('routes.news'),'PublicationController@index')->name('news');
Route::get('/{slug}/{id}','PublicationController@show')->name('showNew');
Route::get(trans('routes.team'), function () {
return view('equipe/equipe');
})->name('team');
Route::get('lang/{language}', 'LanguageController@switchLang')->name('lang.switch');
Route::put(trans('routes.changeDefaul'),'UtilisateurController@changeDefaul')->name('changeDefaul');
Route::get(trans('routes.postNew'),'ActualiteController@create')->name('postNew');
Route::post(trans('routes.postNew'),'ActualiteController@store')->name('postNew');
Auth::routes();
Route::get('/Utilisateur','UtilisateurController@index')->name('user');
Route::get(trans('routes.pdf'), 'PDFController@index')->name('pdf');
Route::get(trans('routes.displayNew'),'ActualiteController@index')->name('displayNew');
Route::put(trans('routes.displayOneNew'),'ActualiteController@get')->name('displayOneNew');
Route::put('/actualite/suppressionActu','ActualiteController@delete')->name('actuSuppr');
Route::put(trans('routes.updateActuality'),'ActualiteController@publier')->name('updateActuality');
Route::post('actualite/update','ActualiteController@update')->name('updateNew');
Route::get('/admin','AdminController@index')->name('adminIndex');
Route::get('/fileManager','FileManagerController@index')->name('fileManager');
感谢大家的帮助
我进行了研究以找到解决方案,但我找不到任何东西。
解决方案
实际路径必须是resources/views/errors/404.blade.php
. 不确定这是否是您的错字,但您缺少views
目录。
同样对于默认的 5.6 行为,您可以将渲染函数保留app/Exceptions/Handler.php
为:
public function render($request, Exception $exception)
{
return parent::render($request, $exception);
}
推荐阅读
- dataframe - 为什么 Dask 在我的 Dataframe 中填写“foo”和 1
- javascript - 如果您只知道属性名称,您能否通过 setter 和 getter 从对象的列表中定义属性?
- python - 如何让3个线程依次打印
- c++ - 上限 time_point 到运行时定义的持续时间
- python - 使用 xml.dom.minidom 在 Python 中进行 XML 注入
- php - 过滤整个 $_POST 变量 - 这会安全吗?
- sql - 如何修复 OLEDB、SQL 中的更新和设置命令?
- amazon-web-services - 没有得到詹金斯解锁路径
- java - 如何解决:数独求解器堆栈溢出问题
- java - 如何从文本中提取单个单词和 url?