我正在使用Laravel4框架,我遇到了这个问题。
我想根据请求的网址显示自定义404错误。
例如:
Route::get('site/{something}', function($something){
return View::make('site/error/404');
});
和
Route::get('admin/{something}', function($something){
return View::make('admin/error/404');
});
'$something'
的值并不重要。
所示示例仅适用于一个细分,即'site/foo'
或'admin/foo'
。
如果有人请求'site/foo/bar'
或'admin/foo/bar'
laravel将抛出默认的404错误。
App::missing(function($exception){
return '404: Page Not Found';
});
我试图在Laravel4文档中找到一些东西,但没有什么是适合我的。 请帮助:)
谢谢!
答案 0 :(得分:28)
在app/start/global.php
App::missing(function($exception)
{
if (Request::is('admin/*'))
{
return Response::view('admin.missing',array(),404);
}
else if (Request::is('site/*'))
{
return Response::view('site.missing',array(),404);
}
else
{
return Response::view('default.missing',array(),404);
}
});
在您看来,您可以$something
或{{ Request::path(); }}
{{ Request::segment(); }}