UCenter Home是康盛创想(Comsenz)公司发布的一款SNS建站系统,目前最新版本是1.5。在 UCenter 系统下的各 Comsnez 产品均可以实现同步登录、同步退出,如何设置同步登录可参考教程:
http://faq.comsenz.com/viewnews-24 如果不能同步登录,请参考下面的方法进行排查。
1、检查 UCenter 后台各应用的通信是否成功。
2、检查确定 UCenter 里各个应用中的“是否开启同步登录:”需选择“是”。
3、检查各应用的 cookiepre,不能设置为一样的,也就是每个应用的 cookiepre 值都要设置为不同的。
4、请检查下 UCenter Home 的 config.php 文件里面的 UCenter 参数设置是否正确,导致 UCenter Home 连接不上 UCenter。
可以登陆 UCenter 后台 => 应用管理 => 编辑 UCenter Home 这个应用,将里面最下面应用的 UCenter 配置信息复制一份,将 UCenter Home 的 config.php 里面的对应信息替换下。
5、其它应用同理,也是检查应用的配置文件里 UCenter 参数设置是否正确,操作步骤同上。
6、对于编码为 utf8 的用户,注意检查自己的 config 文件有没有修改过编码,默认的编码是 ansi 编码,而不是 utf8 编码。如果修改过 config 文件有 utf8 编码,则会出现 UCenter 通信不成功导致的无法登录情况。
7、如果用户在论坛或其他应用注册,新用户第一次登陆 UCenter Home 或其他应用时,需要手动登陆一次,以后可以同步登陆。
8、Discuz!7.0.0 无法和其他应用同步登陆
打开 global.func.php,找到
$show_message = str_replace("'", "\'", strip_tags($show_message));
替换为:
$show_message = str_replace("'", "\'", $show_message);
如果还不行
Discuz!7.0.0 正式版在头部不能显示空间的连接,前提是同一个 UCenter 下安装了UCenter Home 了。
打开 ./include/cache.func.php
找到
if(@include(DISCUZ_ROOT.'./uc_client/data/cache/apps.php') && is_array($_CACHE['apps'])) {
替换为
@include(DISCUZ_ROOT.'./uc_client/data/cache/apps.php');
if(is_array($_CACHE['apps'])) {
9、到应用的配置文件中,修改 'UC_IP' 地址为你服务器的 IP 地址。
以前的是
define('UC_IP', '127.0.0.1);
改成
define('UC_IP', '69.89.31.213');
修改之后一切正常,可以同步。
解释:127.0.0.1 是因为有的服务器不支持自己访问自己造成的,很多虚拟主机都有这问题。
10、如果在论坛后台 => 全局 => 注册与访问 => 设置邀请注册 和 Email 验证注册的话 ,在其他应用注册的用户,在那个应用登陆后访问论坛会处于未登陆状态,建议先关闭这个设置。