laravel使用中间件实现禁止未登录用户访问页面
2017-12-20 17:53
771 查看
1、生成中间件
[root@localhost MRedis]# php artisan make:middleware CheckLogin
Middleware 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、成功
[root@localhost MRedis]# php artisan make:middleware CheckLogin
Middleware 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、成功
相关文章推荐
- ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
- 判断用户是否已登录,未登录用户禁止访问任何页面或action,自动跳转到登录页面
- 使用Shiro登录成功后,跳转到之前访问的页面实现
- php使用 _before_index() 来实现访问页面前,判断登录
- laravel利用中间件防止未登录用户直接访问后台
- php使用 _before_index() 来实现访问页面前,判断登录
- 详解JavaEE使用过滤器实现登录(用户自动登录 安全登录 取消自动登录黑用户禁止登录)
- JavaWeb拦截器,查看用户是否登录过,未登录禁止访问页面并且跳转到登录页面
- 使用Jquery打造最佳用户体验的登录页面的实现代码
- 使用Jquery打造最佳用户体验的登录页面的实现代码
- struts2.0拦截器(实现未登录的用户不能访问系统的页面)(转)
- Laravel5.4 定义中间件,没有登录访问后台跳转到指定页面
- Laravel 5.3 使用内置的 Auth 组件实现多用户认证功能以及登陆才能访问后台的功能的一种实现方法
- PHP用户登录后跳转回上一访问页面的实现思路及代码
- php使用 _before_index() 来实现访问页面前,判断登录
- salesforce 零基础学习(五十一)使用 Salesforce.com SOAP API 实现用户登录以及简单的增删改查(JAVA访问salesforce)
- JSP作业4 - 使用JSP+JavaBean+Servlet实现用户登录注册页面
- JSP作业3 - 使用JSP实现简单的用户登录注册页面
- vue.js在laravel框架中的拦截器 ( axios)的使用--实现判断用户登录
- 详解JavaEE使用过滤器实现登录(用户自动登录 安全登录 取消自动登录黑用户禁止登录)