Laravel框架基于中间件实现禁止未登录用户访问页面功能示例


Posted in PHP onJanuary 17, 2019

本文实例讲述了Laravel框架基于中间件实现禁止未登录用户访问页面功能。分享给大家供大家参考,具体如下:

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、成功

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

PHP 相关文章推荐
用DBSQL类加快开发MySQL数据库程序的速度
Oct 09 PHP
php木马攻击防御之道
Mar 24 PHP
PHP字符串处理的10个简单方法
Jun 30 PHP
PHP rawurlencode与urlencode函数的深入分析
Jun 08 PHP
php密码生成类实例
Sep 24 PHP
PHP实现获取域名的方法小结
Nov 05 PHP
朋友网关于QQ相关的PHP代码(研究QQ的绝佳资料)
Jan 26 PHP
Laravel 5框架学习之路由、控制器和视图简介
Apr 07 PHP
PHP如何通过AJAX方式实现登录功能
Nov 23 PHP
thinkPHP查询方式小结
Jan 09 PHP
php从数据库读取数据,并以json格式返回数据的方法
Aug 21 PHP
如何使用php生成zip压缩包
Apr 21 PHP
Laravel框架基于ajax实现二级联动功能示例
Jan 17 #PHP
Laravel框架基于ajax和layer.js实现无刷新删除功能示例
Jan 17 #PHP
strpos() 函数判断字符串中是否包含某字符串的方法
Jan 16 #PHP
Laravel框架实现的批量删除功能示例
Jan 16 #PHP
Laravel框架实现的rbac权限管理操作示例
Jan 16 #PHP
PHP基于cookie实现统计在线人数功能示例
Jan 16 #PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
Jan 15 #PHP
You might like
PHP实现MVC开发得最简单的方法――模型
2007/04/10 PHP
php的正则处理函数总结分析
2008/06/20 PHP
PHP之数组学习
2011/05/29 PHP
PHP之APC缓存详细介绍 apc模块安装
2014/01/13 PHP
PHP使用Session遇到的一个Permission denied Notice解决办法
2014/07/30 PHP
thinkphp模板赋值与替换实例简述
2014/11/24 PHP
Symfony核心类概述
2016/03/17 PHP
PHP 中TP5 Request 请求对象的实例详解
2017/07/31 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
jQuery实现图片信息的浮动显示实例代码
2013/08/28 Javascript
js 操作符汇总
2014/11/08 Javascript
javascript 构造函数方式定义对象
2015/01/02 Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
2016/07/27 Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
2016/12/16 Javascript
BootStrap 动态表单效果
2017/06/02 Javascript
JavaScript创建对象_动力节点Java学院整理
2017/06/27 Javascript
Vue.js中关于侦听器(watch)的高级用法示例
2018/05/02 Javascript
Seajs源码详解分析
2019/04/02 Javascript
react 不用插件实现数字滚动的效果示例
2020/04/14 Javascript
python pickle 和 shelve模块的用法
2013/09/16 Python
教你如何在Django 1.6中正确使用 Signal
2014/06/22 Python
Python编写检测数据库SA用户的方法
2014/07/11 Python
理解Python中的类与实例
2015/04/27 Python
python django 实现验证码的功能实例代码
2017/05/18 Python
Python3 log10()函数简单用法
2019/02/19 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
python lambda表达式在sort函数中的使用详解
2019/08/28 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
tensorflow之tf.record实现存浮点数数组
2020/02/17 Python
python实现IOU计算案例
2020/04/12 Python
Java多线程实现四种方式原理详解
2020/06/02 Python
Python将字典转换为XML的方法
2020/08/01 Python
Python模块zipfile原理及使用方法详解
2020/08/04 Python
美国CVS药店官网:CVS Pharmacy
2018/07/26 全球购物
房产继承公证书
2014/04/09 职场文书
节能减耗标语
2014/06/21 职场文书