UCENTER同步登录工作原理和配置要点
ucenter的同步登录原理:
1)Ucenter是和uc_client同步的。每个PHP应用,加入了UCENTER后,都会在主目录下有个UC_CLIENT目录。这个目录里,都有一个client.PHP。
2)以我的应用例子来说,我的ecshop系统和discuz系统都加入了ucenter。则ecshop登录时,user.php中的login会检查配置文件,并根据配置最终调用uc_client\client.php中的uc_user_synlogin。
3)uc_user_synlogin会调用ucenter\control\user.php中的onsynlogin。也就是说,到这一步,登录信息终于通过应用的UC_CLIENT到了UCENTER。
4)ucenter生成类似<script src=http://xxxx.xxx.xxx/bbs/api/uc.php?time=.......></script>的字符串返回。在我的系统里,ucenter集成了两个系统(ecshop和bbs),生成的字符串就会包含两个<script></script>。
5)这些字符串被输出到浏览器,相当于ecshop和bbs的api/UC.PHP带着登录信息的参数执行了一遍,其实核心就是创建各自应用的COOKIE和生成SESSION——这正是登录要做的事。
6)这样,登录ecshop,就自动登录了bbs。之后你打开bbs的网页,就会发现自己已经登录了。
配置:
1)ucenter端没啥好说的,加应用,按照提示做对即可。每个应用显示“通讯成功”,通常就对了。要说容易犯的错误,应该是应用的网址(比如http://xxx.xxx.xxx/bbs),最后不要带“/”。
2)如果通讯没有成功,就要检查该应用的uc_client配置参数。每个应用,uc_client的配置文件在什么位置,是不一定的。这个要在每个应用的API目录的UC.PHP里面去看。比如我的discuz系统下,是在DISCUZ_ROOT/config/config_ucenter.php,这个就是配置文件。而ecshop是保存在数据库中的XXX_shop_config表里(在后台管理的会员整合中,可以修改各个参数)。
3)不管现在的配置文件参数是啥,只要把把ucenter里“应用的UCENTER配置信息”那个项目的内容复制覆盖过来,即可。
UCENTER同步登录工作原理和配置要点的更多相关文章
- 一文看懂汽车电子ECU bootloader工作原理及开发要点
随着半导体技术的不断进步(按照摩尔定律),MCU内部集成的逻辑功能外设越来越多,存储器也越来越大.消费者对于汽车节能(经济和法规对排放的要求)型.舒适性.互联性.安全性(功能安全和信息安全)的要求越来 ...
- [转帖]keepalived工作原理和配置、使用
keepalived工作原理和配置.使用 https://www.iteye.com/blog/aoyouzi-2288124 keepalived是什么 keepalived是集群管理中保证集群高可 ...
- 简单分析ucenter 会员同步登录通信原理
1.用户登录discuz,通过logging.php文件中的函数uc_user_login对post过来的数据进行验证,也就是对username和password进行验证. 2.如果验证成功,将调用位 ...
- 【转】 Ucenter同步登录原理解析
应用中调用函数us_user_synlogin并输出 echo uc_user_synlogin($uid); 解析: 1. 该函数位于client.PHP中 2. 作用实质上是调用ucenter u ...
- java复习要点(一)------- java语言的特点、java的工作原理、配置环境变量、java命令的使用
一.java语言的特点: (1)简单并面向对象 (2)鲁棒并安全: java语言在编译及运行程序时,都要进行严格的检查,防止不匹配问题的发生.如果引用一个非法类型,或执行一个非法类型操作,java减肥 ...
- ucenter 同步登录总结
部署: discuz默认安装后就安装了uc_server应用 各应用根目录必须有uc_client文件夹. 下载ucenter程序查看范例程序 应用管理中,应用的主 URL必须指向到应用的根目录,应用 ...
- keeplived工作原理及配置
一.keepalived简介及作用 Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能 keepal ...
- Oracle NET工作原理、配置及连接问题排查
一.Oracle NET配置文件 Oracle NET是一个软件层,支持不同网络协议之间的转换.不同的物理机器可以借助这个软件层实现相互间的通信,具体而言就是实现对oracle的远程访问. oracl ...
- Mysql主从同步的实现原理与配置实战
1.什么是mysql主从同步? 当master(主)库的数据发生变化的时候,变化会实时的同步到slave(从)库. 2.主从同步有什么好处? 水平扩展数据库的负载能力. 容错,高可用.Failover ...
随机推荐
- [转]轻松理解AOP思想(面向切面编程)
原文链接 Spring是什么 先说一个Spring是什么吧,大家都是它是一个框架,但框架这个词对新手有点抽象,以致于越解释越模糊,不过它确实是个框架的,但那是从功能的角度来定义的,从本质意义上来讲,S ...
- SpringBoot + redis + @Cacheable注解实现缓存清除缓存
一.Application启动类添加注解 @EnableCaching 二.注入配置 @Bean public CacheManager cacheManager(RedisTemplate redi ...
- JavaWeb项目http请求报错:Error parsing HTTP request header
详细报错信息如下图: 原因:一一排查后,发现是http的请求中,包含了 “ | ” 竖线特殊符号:而并不是网上说的请求url太长了的原因. 解决方法:把 | 替换为 @
- Linux系统下安装python3.7.3环境
这里用到的Linux系统是centos7系统,centos7是自带py的但是py的2.7.5版本 连接服务器的使用的是SSH Secure shell 1.首先安装依赖包 1)安装gcc编译器 gcc ...
- SpringMVC配置没有任何问题根据请求却怎么都找不到映射(tomcat所导致的问题)
本人在做SpringMVC练习的时候,配置文件反复检查了不下十几遍,没有任何问题,然后就招了个之前的项目的源码复制进去,原来的项目没有任何问题,这个项目却怎么都不能跳转路径,然后有找了一个Spring ...
- nodejs的C++扩展中实现异步回调
在nodejs的官方网站中有关于C++扩展的详细说明,其中包含了从"hello world"到对象封装的一系列示例.其中的“callback”节是关于回调函数的,美中不足的是,这个 ...
- Flask 教程 第二十三章:应用程序编程接口(API)
本文翻译自The Flask Mega-Tutorial Part XXIII: Application Programming Interfaces (APIs) 我为此应用程序构建的所有功能都只适 ...
- 从零开始-建站前的准备之django数据库创建的问题
稍微熟悉了一下django里面对于数据的操作,发现遇见了好多的问题. django对数据的操作是代码式的操作. 一开始在models里面开始为某个表创建参数,像username,password这样的 ...
- linux下的文件操作
彻底删除文件 rm -rf + [文件目录 可相对可绝对] 是彻底删除而且linux无回收站 创建文件 touch + [文件名] 创建文件夹 mkdir + [文件夹名] 文件提权:chmod 77 ...
- 关于AJAX跨域和原生AJAX CORS跨域解决
项目需求要在别人的域名下调用自己的接口,因为浏览器的同源策略是不允许不同域名下之间的信息交换,那就意味着要跨域处理 参考博客 :https://blog.csdn.net/Ulricalin/arti ...