ucenter多站点同步登陆

最近要做多站点同步登陆问题, 使用ucenter解决跨域问题。不知道什么是跨域和同源策略的童鞋先百度学习。

 先下载ucenter,目前下载地址http://www.comsenz.com/downloads/install/ucenter#down_open,

然后解压,安装ucserver此处略过。这是我的,已经配置好的通信成功的子站。

  QQ图片20161101135628.png

下面我们开始配置一个全新的。

QQ图片20161101140001.png

上面根据你自己需要的配置成适合自己的,类型选择ucenterHome,点击提交,

再次查看应用列表,多了一个通信失败的应用,这时候我们点击这个失败的应用名字的超链接进去看详情,

最下方有一系列配置信息,待会会使用到。然后进入子站d.cn的网站根目录,把ucenter解压文件中advanced中除了document的2个目录复制到d.cn网站根目录。把example中的文件夹 都移到根目录,类似我下图的效果(document里面有说明,有时间你可以细看)

QQ图片20161101140938.png

修改config.inc.php中信息,来源是开始uc_server底部那些信息,类似

define('UC_CONNECT', 'mysql');
define('UC_DBHOST', 'localhost');
define('UC_DBUSER', 'root');
define('UC_DBPW', 'root');
define('UC_DBNAME', 'ucenter');
define('UC_DBCHARSET', 'utf8');
define('UC_DBTABLEPRE', '`ucenter`.uc_');
define('UC_DBCONNECT', '0');
define('UC_KEY', 'yourword');
define('UC_API', 'http://a.cn/uc_server');
define('UC_CHARSET', 'utf-8');
define('UC_IP', '');
define('UC_APPID', '3');
define('UC_PPP', '20');

还有关键的地方,下面那些配置信息也需要修改为适合自己的,不然就会通信失败。

这时候再去前面看下,已经通信成功了。

QQ图片20161101141708.png

通信成功以后 代码可以看example里面的代码了以及文档了。再讲几句,如果A站的与B站用的不是一个数据库,又想同步登录怎么办,在B站同步登录的函数里面 uc.php里面synlogin方法这里,可以看到我们有username,把这个username值去b站数据库里面查一下,有的话就设置b站的(uid)cookie,没有的话 可以找a站的数据库 弄到密码,并创建用户 ,设置cookie,这样用户在a站和b站都可以登录了 而且数据库都不一样,这是我得一个简单想法


nickname
content