最近,一直在摆弄discuz和康盛的东东,今天遇到了UCenter 与 Discuz 通信失败,反复研究了几种办法,列出来供大家参考。
考虑步骤如下:
1、”应用的 URL”是否正确,(复制地址到地址栏,看能否访问到论坛)能访问继续下面操作。
2、Discuz 后台的”UCenter 访问地址”。如果您的 UCenter 访问地址发生了改变,请修改此项直到可以通过此地址访问到 UCenter ,如果还不行请按提示使用IP方式。
3、”通信密钥”是否一致。这个一般是导致 UCenter 与 DIscuz 通信失败的主要原因。这个密钥是可以自己随便写的,但要保证 UCenter 与 DIscuz 的密钥一致。
注:UCenter的设置的密钥可以登录UC,在”应用管理”里面,点击编辑相应的Discuz查看;Discuz查看比较麻烦,打开discuz安装目录下的config.inc.php文件,在文件的最后,查看“UC_KEY”对应的值。4、”ID”。查看 UCenter 后台的应用 ID 是否与 DIscuz 后台的 ID 一致,如不一致,请修改 DIscuz 后台的”UCenter 应用 ID”。这个也是导致 UCenter 与 DIscuz 通信失败的主要原因。
总的原则就是使二个后台的设置内容一样,一般同 config.inc.php 的设置。
如果以上内容都完全正确,通信依然失败,那么很有可能就是目录的权限问题了。请查看Ucenter目录是否有可读权限,如没有请对其目录及子目录设置可读权限。
如果通信是成功的,就要进行如下操作:
1.打开uchome安装目录中的config.php,再打开discuz安装目录下的config.inc.php;
2.在uchome的config.php中查找$_SC['tablepre'],看看设置的值是什么,一般是“uchome_”,那么 discuz的config.php中的’cookiepre’值须为“uchome_”,要与uchome的config.php中的$_SC['tablepre']设置值一致;
3. 在discuz中的config.inc.php,如果’tablepre’是“cbd_”,那么uchome中的config.php里的$_SC['cookiepre']值须为“cbd_”,保持一致;
保存,登陆测试,看看登陆了discuz后,跳转到uchome,是否是登陆状态的。
如果不是,继续下面步骤:
1.打开discuz安装目录/forumdata/cache路径下的cache_settings.php文件;
2.查找字符串:“’allowsynlogin’ =>”(不包含外面的双引号),将“=>”后面,“,”前面的值该为:true
3.测试,看看是否能够同步登陆。
如果还是不能同步:
1.在开始菜单中打开运行(或直接按WIN+R打开),输入CMD,打开dos命令运行框,输入“ping www.bidiao.com”,(开心上社的域名要改成你的域名),看看ping出的IP地址,记下;
2.依然还要打开uhome安装目录下的config.php,和discuz安装目录下的config.inc.php;
3.在config.php文件里面查找“define(‘UC_IP’,”字符串,把后面设定的值改为你刚才ping得的IP地址;
4.同样在config.inc.php文件里面查找“define(‘UC_IP’,”字符串,把后面设定的值改为你刚才ping得的IP地址。
测试看看,行不行。我的开心上社网站处理到这里的时候,已经OK了,所以往下就没其他深入研究了。
