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分页函数
Oct 09 PHP
PHP file_get_contents 函数超时的几种解决方法
Jul 30 PHP
PHP自动选择 连接本地还是远程数据库
Dec 02 PHP
php中实现记住密码自动登录的代码
Mar 02 PHP
PHP gbk环境下json_dencode传送来的汉字
Nov 13 PHP
PHP更新购物车数量(表单部分/PHP处理部分)
May 03 PHP
解析thinkphp import 文件内容变量失效的问题
Jun 20 PHP
浅析php创建者模式
Nov 25 PHP
10个对初学者非常有用的PHP技巧
Apr 06 PHP
一段实用的php验证码函数
May 19 PHP
PHP在innodb引擎下快速代建全文搜索功能简明教程【基于xunsearch】
Oct 14 PHP
thinkPHP+phpexcel实现excel报表输出功能示例
Jun 06 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静态变量当缓存的方法
2013/11/13 PHP
php上传图片存入数据库示例分享
2014/03/11 PHP
php实现通过cookie换肤的方法
2015/07/13 PHP
摘自织梦CMS中的图片处理类
2015/08/08 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
2016/03/21 PHP
WEB高性能开发之疯狂的HTML压缩
2010/06/19 Javascript
javascript 进阶篇3 Ajax 、JSON、 Prototype介绍
2012/03/14 Javascript
js关闭子窗体刷新父窗体实现方法
2012/12/04 Javascript
js完美解决IE6不支持position:fixed的bug
2015/04/24 Javascript
纯JavaScript代码实现移动设备绘图解锁
2015/10/16 Javascript
jQuery中的ready函数与window.onload谁先执行
2016/06/21 Javascript
详解XMLHttpRequest(二)响应属性、二进制数据、监测上传下载进度
2016/09/14 Javascript
详解Nodejs基于mongoose模块的增删改查的操作
2016/12/21 NodeJs
vue2.0实现前端星星评分功能组件实例代码
2018/02/12 Javascript
vue.js 实现点击展开收起动画效果
2018/07/07 Javascript
小程序使用watch监听数据变化的方法详解
2019/09/20 Javascript
浅谈Node新版本13.2.0正式支持ES Modules特性
2019/11/25 Javascript
用Javascript实现发送短信验证码间隔功能
2021/02/08 Javascript
[03:37]2015国际邀请赛第四日现场精彩集锦
2015/08/08 DOTA
go和python变量赋值遇到的一个问题
2017/08/31 Python
python实现简易云音乐播放器
2018/01/04 Python
在Python 字典中一键对应多个值的实例
2019/02/03 Python
python3+django2开发一个简单的人员管理系统过程详解
2019/07/23 Python
详解Python中打乱列表顺序random.shuffle()的使用方法
2019/11/11 Python
python获取array中指定元素的示例
2019/11/26 Python
Python Spyder 调出缩进对齐线的操作
2021/02/26 Python
css3图片边框border-image的用法
2017/06/30 HTML / CSS
Html5新特性用canvas标签画多条直线附效果截图
2014/06/30 HTML / CSS
瑞士男士时尚网上商店:Babista
2020/05/14 全球购物
JAVA程序设计笔试题面试题一套
2015/07/28 面试题
安全大检查实施方案
2014/02/22 职场文书
小学兴趣小组活动总结
2014/07/07 职场文书
妈妈再爱我一次观后感
2015/06/08 职场文书
利用ajax+php实现商品价格计算
2021/03/31 PHP
一篇文章带你学习Mybatis-Plus(新手入门)
2021/08/02 Java/Android
关于Mybatis中SQL节点的深入解析
2022/03/19 Java/Android