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 ...
随机推荐
- Python数据类型-4 列表
列表 列表是Python中最基本也是最常用的数据结构之一.列表中的每个元素都被分配一个数字作为索引,用来表示该元素在列表内所排在的位置.第一个元素的索引是0,第二个索引是1,依此类推. Python的 ...
- C++查找指定路径下的特定类型的文件
转载:https://www.cnblogs.com/tinaluo/p/6824674.html 例子:找到C盘中所有后缀为exe的文件(不包括文件夹下的exe文件) #include<std ...
- 第2节 Scala中面向对象编程:12、13、14、15、16、trait
6.4. Scala中面向对象编程之trait 6.4.1. 将trait作为接口使用 Scala中的trait是一种特殊的概念: 首先先将trait作为接口使用,此时的trait就与Java ...
- Linux命令:netstat命令
netstat功能:显示网络连接情况 netstat功能选项 -t:tcp协议的连接 -u:udp协议的链接 -l:监听状态的连接 -a:所有状态的连接 -p:连接相关的进程 -n:数字格式显示 -r ...
- Python内置模块-logging
一.初识logging模块 import logging logging.debug("debug message") #级别最低,只有在诊断问题时才有兴趣的详细信息. loggi ...
- js——form表单验证
用js实现一个简易的表单验证 效果: 代码: <html> <head> <title>js校验form表单</title> <meta char ...
- 算法设计与分析 - AC 代码 - 第 6 弹(重复第 3 弹)
PTA-算法设计与分析 - c++(g++) #include<bits/stdc++.h> using namespace std; long max3(long a,long b,lo ...
- 修改gho打造个性ghostxp光盘
一.更换OEM信息(更改用户名.公司名与电脑名的方法 1.用软碟通提取出ghostxp中的gho镜像文件. 2.,用GHOSTEXP .EXE打开这个GHO文件,提取sysprep目录下的syspre ...
- Python学习笔记之正则表达式
本篇在写的时候大量参考了https://deerchao.cn/tutorials/regex/regex.htm的内容 一.什么是正则表达式 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂 ...
- 面试题之第一部分(Python基础篇) 80题
第一部分(python基础篇)80题 为什么学习Python?==*== # 1. python应用于很多领域,比如后端,前端,爬虫,机器学习(人工智能)等方面,几乎能涵盖各个开发语言的领域,同时它相 ...