zoukankan      html  css  js  c++  java
  • UCENTER同步登录工作原理和配置要点

    ucenter的同步登录原理:

    1)Ucenter是和uc_client同步的。每个PHP应用,加入了UCENTER后,都会在主目录下有个UC_CLIENT目录。这个目录里,都有一个client.PHP。

    2)以我的应用例子来说,我的ecshop系统和discuz系统都加入了ucenter。则ecshop登录时,user.php中的login会检查配置文件,并根据配置最终调用uc_clientclient.php中的uc_user_synlogin。

    3)uc_user_synlogin会调用ucentercontroluser.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配置信息”那个项目的内容复制覆盖过来,即可。

  • 相关阅读:
    shell color
    mac os develop
    git 实用命令
    FlexSlider插件的详细设置参数 http://www.woothemes.com/flexslider/
    å∫ç∂´ƒ©˙ˆ∆˚¬µ˜øπœ®ß†¨√∑≈¥Ω who know?
    apple mac 下使用机械键盘的办法,键盘映射工具软件,apple mac Mechanical keyboard
    地图比例尺与高德地图中的缩放级别(0-20)的映射关系与转换方法
    【转】ViewPager 一屏显示多个子页面
    Android中解析XML格式数据的方法
    Linux 中的 Service
  • 原文地址:https://www.cnblogs.com/yingjiang/p/4639740.html
Copyright © 2011-2022 走看看