最近公司网站要出手机版,由于与论坛要有互通,实现会员的共享,由于对discuz不熟悉,起先考虑的是直接读取discuz的用户表,然后进行判断等操作,发现过于复杂,而且安全也不好。

前一段时间进行过论坛与商城的整合,采用的书ucenter进行整 合,很方便,不仅可以实现用户的整合,而且能够实现积分互换等操作,但是这种整合是已经在两者的系统中有过预置的,比较方便。如果能够将ucenter应 用到外部任意的自定义网站中会十分的方便,其实ucenter是有这种强大的能力的

我在本机搭建的测试环境时Discuz! X2 Release 20111221 ;UCenter 1.6.0 Release 20110501;

已经实现了与ecshop的通信

现在我们下载一个ucenter的完整包 我们看见里面有advanced,advanced里有document这是借口的说明文档,example这是例子,uc_client这是客户端。

我们现在ucenter里添加新应用

应用类型选择其他

选项结合自己的情况填写,其中应用的主url就是说比如你的主目录在根目录下的root,就填http://localhost/root

提交后会有应用的ucenter的配置信息

我把examples复制到uctest目录下,把uc_client复制到examples目录下

修改config.inc.php文件的内容

下面是我的配置文件的内容

  1. <?php
  2. define('UC_CONNECT', 'mysql');              // 连接 UCenter 的方式: mysql/NULL, 默认为空时为 fscoketopen()
  3. // mysql 是直接连接的数据库, 为了效率, 建议采用 mysql
  4. //数据库相关 (mysql 连接时, 并且没有设置 UC_DBLINK 时, 需要配置以下变量)
  5. define('UC_DBHOST', 'localhost');           // UCenter 数据库主机
  6. define('UC_DBUSER', 'root');                // UCenter 数据库用户名
  7. define('UC_DBPW', '123456');                    // UCenter 数据库密码
  8. define('UC_DBNAME', 'discuz');              // UCenter 数据库名称
  9. define('UC_DBCHARSET', 'gbk');              // UCenter 数据库字符集
  10. define('UC_DBTABLEPRE', '`discuz`.pre_ucenter_');           // UCenter 数据库表前缀
  11. //通信相关
  12. define('UC_KEY', 'example2');               // 与 UCenter 的通信密钥, 要与 UCenter 保持一致
  13. define('UC_API', 'http://localhost/discuz/uc_server');  // UCenter 的 URL 地址, 在调用头像时依赖此常量
  14. define('UC_CHARSET', 'gbk');                // UCenter 的字符集
  15. define('UC_IP', '');                    // UCenter 的 IP, 当 UC_CONNECT 为非 mysql 方式时, 并且当前应用服务器解析域名有问题时, 请设置此值
  16. define('UC_APPID', 3);                  // 当前应用的 ID
  17. //ucexample_2.php 用到的应用程序数据库连接参数
  18. $dbhost = 'localhost';          // 数据库服务器
  19. $dbuser = 'root';           // 数据库用户名
  20. $dbpw = '123456';               // 数据库密码
  21. $dbname = 'ps_example';         // 数据库名
  22. $pconnect = 0;              // 数据库持久连接 0=关闭, 1=打开
  23. $tablepre = 'example_';         // 表名前缀, 同一数据库安装多个论坛请修改此处
  24. $dbcharset = 'gbk';         // MySQL 字符集, 可选 'gbk', 'big5', 'utf8', 'latin1', 留空为按照论坛字符集设定
  25. //同步登录 Cookie 设置
  26. $cookiedomain = '';             // cookie 作用域
  27. $cookiepath = '/';          // cookie 作用路径
  28. ?>

其中的很多信息如果不会填,可以再ucenter的应用的 UCenter 配置信息:

中找到,

这时候就会显示ucenter相应的应用通信成功了,具体接口如何使用参见example和document里的说明

ucenter 整合外部网站,实现登录等操作的更多相关文章

  1. Ucenter整合Thinkphp 双向同步登录退出

    1.整合初步工作: 1,安装Ucenter,完成后添加应用,填写要对接的网站地址 2,api , uc_client目录放置对接项目的根目录 3,通信对接,新建Ucenter组,confi文件填写在u ...

  2. discuz !NT 3.5 论坛整合 .net 网站用户登录,退出

    using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlCont ...

  3. 在Winform混合式框架中整合外部API接口的调用

    在我们常规的业务处理中,一般内部处理的接口多数都是以数据库相关的,基于混合式开发的Winform开发框架,虽然在客户端调用的时候,一般选择也是基于Web API的调用,不过后端我们可能不仅仅是针对我们 ...

  4. Spring Security 整合freemaker 实现简单登录和角色控制

    Spring Security 整合freemaker 实现简单登录和角色控制     写这篇文章是因为我做了一个电商网站项目,近期刚加上权限控制.整个过程很简单,在此给大家梳理一下,也算是自己对知识 ...

  5. 【ASP.NET】UCenter实现多站点同步登录退出

    利用UCenter实现discuz论坛和应用网站同步登录和退出功能 测试环境:Discuz! X3.2.UCenter 1.6..Net Framework 4.0 进入Discuz 后台的UCent ...

  6. PHPCMS与UCenter整合要点

    要点一: PHPCMS不能直接与UCenter整合,而是要经过 PHPSSO 适配,因此应用主URL应是 http://phpcms_url/phpsso_server 这种模式的. 要点二: 因为 ...

  7. Asp.Net MVC3.0网站统计登录认证的在线人数

    Asp.Net MVC3.0网站统计登录认证的在线人数 前言 对于一个网站来说,统计在线人数是一个很重要的工作.平时也发现很多的网站论坛等都有在线人数的显示.对于一个网站如果在线人数很多,用户看到了这 ...

  8. C#模拟网站用户登录

    我们在写灌水机器人.抓资源机器人和Web网游辅助工具的时候第一步要实现的就是用户登录.那么怎么用C#来模拟一个用户的登录拉?要实现用户的登录,那么首先就必须要了解一般网站中是怎么判断用户是否登录的. ...

  9. JSP +MySQL实现网站的登录与注册小案例

    为了练手,我就自己试着做了一个网站的登录与注册的小案例.由于没有做美化处理,所以界面并不是很好看. 网站实现的功能如下: 用户首次注册功能 用户登录功能 项目目录展示: 下面我将会分模块展示 注册模块 ...

随机推荐

  1. js实现继承

    js是门灵活的语言,实现一种功能往往有多种做法,ECMAScript没有明确的继承机制,而是通过模仿实现的,根据js语言的本身的特性,js实现继承有以下通用的几种方式1.使用对象冒充实现继承(该种实现 ...

  2. iOS开发网络篇—NSURLConnection基本使用

    iOS开发网络篇—NSURLConnection基本使用 一.NSURLConnection的常用类 (1)NSURL:请求地址 (2)NSURLRequest:封装一个请求,保存发给服务器的全部数据 ...

  3. vs2013 遇到的web性能记录器无法使用问题

    诊断和修复Web测试记录栏的问题.自2005年以来VSTS运也出现了各种由客户多年来提出不同的问题.记录Web测试时,这在一定程度经常提到的一个话题是一个残疾或不存在的Web测试记录吧.因为它可以令人 ...

  4. Android通过HttpURLConnection链接到网络,并获取网络数据

    1.判断网络是否连接 private void networkIsconnected(String str){ ConnectivityManager connMgr = (ConnectivityM ...

  5. Python print格式化输出

    python中的print格式化输出,基本格式:"[字符串]%格式1[字符串]%格式2[字符串]....."%(string1,string2.....) 格式符号 ------- ...

  6. Android 生成颜色器

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...

  7. JavaScript基础--小案例:在网页指定位置弹出错误信息(十二)

    案例分析:点击按钮后,在网页上指定区域,提示错误信息!5秒后,错误信息提示自动消失! <script languag="javascript" type="text ...

  8. 2014年5月份第1周51Aspx源码发布详情

    郑州某高校学生考评系统源码  2014-5-5 [VS2008]功能介绍:   1.用户角色有部主任.教师.学生等.   2.可添加班级考评项目.学生考评项目.   3.可指定学生对班级.学生某考评项 ...

  9. Unity3D 发布无边框exe

    关于:Unity3D 发布无边框exe,Unity3D Build exe无边框 Unity发布windows版本 总是带着边框,很想给它去掉,笔者在网上查了一番,常见的有3中. 1:通过unity3 ...

  10. windows下安装RabbitMq-Service

    一.RaibbitMQ服务器配置 1. 准备工作.如果之前安装过RabbitMQ软件,若想重新安装,必须先把之前的RabbitMQ相关软件卸载. 2. 安装ERLANG语言包.首先到http://ww ...