1、生成中间件
[root@localhost MRedis]# php artisan make:middleware CheckLogin Middleware created successfully.
2、实现中间件,在apphttpmiddlewareCheckLogin.php
public function handle($request, Closure $next)
{
if (!session('user')) {
return redirect('login');
}
return $next($request);
}3、注册中间件,在apphttpkernel.php下,添加的为最后一行
protected $routeMiddleware = [ 'auth' => IlluminateAuthMiddlewareAuthenticate::class, 'auth.basic' => IlluminateAuthMiddlewareAuthenticateWithBasicAuth::class, 'bindings' => IlluminateRoutingMiddlewareSubstituteBindings::class, 'can' => IlluminateAuthMiddlewareAuthorize::class, 'guest' => AppHttpMiddlewareRedirectIfAuthenticated::class, 'throttle' => IlluminateRoutingMiddlewareThrottleRequests::class, 'check.login' => AppHttpMiddlewareCheckLogin::class, // 这一行 ];
4、使用中间件(一定要把登录路由的放在外面)
Route::group(['middleware' => 'check.login'], function() {内部为,不想让未登录用户进的路由}5、成功