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 相关文章推荐
php 随机生成10位字符代码
Mar 26 PHP
学习discuz php 引入文件的方法DISCUZ_ROOT
Jun 21 PHP
PHP之数组学习
May 29 PHP
Php Ctemplate引擎开发相关内容
Mar 03 PHP
PHP在网页中动态生成PDF文件详细教程
Jul 05 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
Aug 16 PHP
php根据某字段对多维数组进行排序的方法
Mar 07 PHP
谈谈PHP中substr和substring的正确用法及相关参数的介绍
Dec 16 PHP
PHP验证码类ValidateCode解析
Jan 07 PHP
PHP将数据导出Excel表中的实例(投机型)
Jul 31 PHP
PHP大文件及断点续传下载实现代码
Aug 18 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防注
2007/01/15 PHP
php URL编码解码函数代码
2009/03/10 PHP
php while循环得到循环次数
2013/10/26 PHP
laravel 之 Eloquent 模型修改器和序列化示例
2019/10/17 PHP
IE本地存储userdata的一个bug说明
2010/07/01 Javascript
js中匿名函数的N种写法
2010/09/08 Javascript
js变量以及其作用域详解
2020/07/18 Javascript
一行代码实现纯数据json对象的深度克隆实现思路
2013/01/09 Javascript
jsp+javascript打造级连菜单的实例代码
2013/06/14 Javascript
解析offsetHeight,clientHeight,scrollHeight之间的区别
2013/11/20 Javascript
Javascript 按位与运算符 (&)使用介绍
2014/02/04 Javascript
js处理自己不能定义二维数组的方法详解
2014/03/03 Javascript
JavaScript 面向对象与原型
2015/04/10 Javascript
使用AngularJS创建单页应用的编程指引
2015/06/19 Javascript
AngularJS实现分页显示数据库信息
2016/07/01 Javascript
AngularJS使用ng-app自动加载bootstrap框架问题分析
2017/01/04 Javascript
jQuery读取XML文件的方法示例
2017/02/03 Javascript
vue组件中使用iframe元素的示例代码
2017/12/13 Javascript
vue scroller返回页面记住滚动位置的实例代码
2018/01/29 Javascript
nodejs多版本管理总结
2018/04/03 NodeJs
微信小程序实现分享商品海报功能
2019/09/30 Javascript
echarts实现获取datazoom的起始值(包括x轴和y轴)
2020/07/20 Javascript
Openlayers实现图形绘制
2020/09/28 Javascript
[01:28:43]2014 DOTA2华西杯精英邀请赛5 24 DK VS CIS
2014/05/25 DOTA
分析Python中设计模式之Decorator装饰器模式的要点
2016/03/02 Python
python实现BP神经网络回归预测模型
2019/08/09 Python
HTML5 图片悬停放大的实现代码示例
2019/12/04 HTML / CSS
城市观光通行证:The Sightseeing Pass
2018/04/28 全球购物
中间件分为哪几类
2012/03/14 面试题
料理师求职信
2014/01/30 职场文书
团日活动总结报告
2014/06/25 职场文书
无刑事犯罪记录证明
2014/09/18 职场文书
2014年银行员工年终自我评价
2014/09/19 职场文书
高考作弊检讨书1500字
2015/02/16 职场文书
Nginx反向代理配置的全过程记录
2021/06/22 Servers
HTML中link标签属性的具体用法
2023/05/07 HTML / CSS