本文實例講述了Laravel框架基于中間件實現禁止未登錄用戶訪問頁面功能。分享給大家供大家參考,具體如下:
1、生成中間件
[root@localhost MRedis]# php artisan make:middleware CheckLoginMiddleware created successfully.
2、實現中間件,在app/http/middleware/CheckLogin.php
public function handle($request, Closure $next){ if (!session('user')) { return redirect('login'); } return $next($request);}3、注冊中間件,在app/http/kernel.php下,添加的為最后一行
protected $routeMiddleware = [ 'auth' => /Illuminate/Auth/Middleware/Authenticate::class, 'auth.basic' => /Illuminate/Auth/Middleware/AuthenticateWithBasicAuth::class, 'bindings' => /Illuminate/Routing/Middleware/SubstituteBindings::class, 'can' => /Illuminate/Auth/Middleware/Authorize::class, 'guest' => /App/Http/Middleware/RedirectIfAuthenticated::class, 'throttle' => /Illuminate/Routing/Middleware/ThrottleRequests::class, 'check.login' => /App/Http/Middleware/CheckLogin::class, // 這一行];
4、使用中間件(一定要把登錄路由的放在外面)
Route::group(['middleware' => 'check.login'], function() {內部為,不想讓未登錄用戶進的路由}5、成功
希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。
新聞熱點
疑難解答
圖片精選