thinkphp如何实现单点登录
发布时间 - 2019-08-26 00:00:00 点击率:次一、前提:CAS服务器搭建完成
这个不是本次的重点,不多讲。传送门:https://blog.csdn.net/u013825231/article/details/79132399
二、下载phpCAS客户端
php客户端下载:https://github.com/apereo/phpCAS
php客户端配置的注意事项等内容:https://apereo.atlassian.net/wiki/spaces/CASC/pages/103252517/phpCAS
php客户端的要求:https://apereo.atlassian.net/wiki/spaces/CASC/pages/103252625/phpCAS+requirements
注意:php配置文件php.ini需要开启php_curl,找到 ;extension=php_curl.dll ,将该句前面的分号去掉即可,改为 extension=php_curl.dll
三、thinkphp5引入phpCAS类库
1.下载好的phpCAS客户端文件结构。
相关推荐:《ThinkPHP教程》
2. 把source文件夹复制到thinphp5下的extend文件夹下,并重命名为:phpCAS
3. config.php文件的配置
4. 因为本人请求单点登录的服务器是http认证的,不是https,需要修改CAS/client.php,将其中的https改为http(刚开始没有修改client.php这个文件,总是使用https认证,所以请求失败)
5. 把CAS类库文件夹的同级文件CAS.php,重命名为php
CAS.php
修改成
6. 登录的控制器方法为:
setDebug();
// Initialize phpCAS
$phpCAS->client(CAS_VERSION_2_0, $cas_host, $cas_port, $cas_context);
// For quick testing you can disable SSL validation of the CAS server.
// THIS SETTING IS NOT RECOMMENDED FOR PRODUCTION.
// VALIDATING THE CAS SERVER IS CRUCIAL TO THE SECURITY OF THE CAS PROTOCOL!
$phpCAS->setNoCasServerValidation();
//这里会检测服务器端的退出的通知,就能实现php和其他语言平台间同步登出了
$phpCAS->handleLogoutRequests();
//访问CAS的验证通过后,跳转到网页
if($phpCAS->forceAuthentication()){
echo "";
};
}
}最后访问这个登录的方法,完成单点登录的页面跳转!
# thinkphp
# 客户端
# 单点
# 命名为
# 类库
# 出了
# 就能
# 不多
# 刚开始
# 跳转
# 等内容
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel如何集成Inertia.js与Vue/React?(安装配置)
Win11怎么开启自动HDR画质_Windows11显示设置HDR选项
JS实现鼠标移上去显示图片或微信二维码
Linux安全能力提升路径_长期防护思维说明【指导】
手机网站制作与建设方案,手机网站如何建设?
详解Android中Activity的四大启动模式实验简述
iOS中将个别页面强制横屏其他页面竖屏
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
利用 Google AI 进行 YouTube 视频 SEO 描述优化
LinuxCD持续部署教程_自动发布与回滚机制
网站制作价目表怎么做,珍爱网婚介费用多少?
百度输入法ai组件怎么删除 百度输入法ai组件移除工具
如何用wdcp快速搭建高效网站?
公司网站制作价格怎么算,公司办个官网需要多少钱?
如何用PHP快速搭建CMS系统?
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
文字头像制作网站推荐软件,醒图能自动配文字吗?
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
Laravel如何生成API文档?(Swagger/OpenAPI教程)
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询
Linux系统命令中tree命令详解
Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】
如何快速查询网站的真实建站时间?
如何在景安云服务器上绑定域名并配置虚拟主机?
Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权
Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】
油猴 教程,油猴搜脚本为什么会网页无法显示?
如何在阿里云服务器自主搭建网站?
Laravel如何实现密码重置功能_Laravel密码找回与重置流程
简单实现Android文件上传
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
Laravel定时任务怎么设置_Laravel Crontab调度器配置
如何在企业微信快速生成手机电脑官网?
Python并发异常传播_错误处理解析【教程】
Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决
如何快速搭建个人网站并优化SEO?
html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
高端云建站费用究竟需要多少预算?
Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解
Win11怎么设置默认图片查看器_Windows11照片应用关联设置
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】
nginx修改上传文件大小限制的方法
轻松掌握MySQL函数中的last_insert_id()
如何将凡科建站内容保存为本地文件?
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?

