Я создал группу маршрутов, используя middleware.It работает отлично.
Но у меня есть одна проблема, если я перемещаю URL-адрес
HTTP: // локальные / Laravel-новости / государственный / админ / дополнения после нового
это без логина, то он перенаправляется на гостевую домашнюю страницу
но если я перейду к URL-адресу
HTTP: // локальный / Laravel-новости / государственные / дополнения после нового
без admin в url, тогда он возвращает пустую страницу. Теперь мой вопрос: как показать страницу не найденной на странице 404 для этого. Я использую laravel 5.1
Спасибо
Обновить
Route::group(['middleware' => 'admin'], function () { Route::get('add-post-new', function () { // dd('something'); return view('a.addPost'); }); Route::post('/add-post-new','PostsController@addPost'); Route::get('/all-post', function () {return view('a.all_post'); }); });
просто сделайте страницу 404.blade.php в /resources/views/errors/
folder, и эта страница будет показана, если маршрут не существует
вместо ошибки laravel для не существующего маршрута:
Sorry, the page you are looking for could not be found. 1/1 NotFoundHttpException in RouteCollection.php line 161:
/resources/views/errors/
folder а затем просто назовите его
abort(404);
Например, выполните маршрут следующим образом:
Route::get('/404', function () { return abort(404); });
вы устанавливаете маршрут 404, используя это. Затем используйте любой файл вида на этом маршруте
App::error(function(Exception $exception, $code) { Log::error($exception); if (Config::get('app.debug') == false) { return Redirect::route('404'); } });
Вы можете использовать abort (); и создать представление в папке с ошибкой, как описано в документации.
Laravel автоматически загрузит страницу с ошибкой и отобразит ее.