立即注册 登录
江大论坛 返回首页

游民的个人空间 http://home.da.jx.cn/?7 [收藏] [复制] [分享] [RSS]

日志

Discuz/Ucenter后台登陆不了,验证码总是CCCC等问题解决方法

已有 420 次阅读2013-6-9 21:53 |个人分类:技术相关| 验证码, Discuz, Ucenter, 后台登陆不了

最近在家蹭网,IP总是变动,一天北京、一天杭州的,今天突然发现Discuz后台要登陆好多遍才能登上。刚开始以为是修改了目录权限导致缓存写入错误引起的,清理了缓存,也经过了排查--不存在这个问题。今天升级Discuz X2到20130201后,出现了整站报错500,经过几番折腾才搞定,之后发现ucenter有时也登陆不了(情况与Discuz后台类似),而且验证码总是CCCC,这下彻底摸不着头脑了。


网上找了一下,Discuz的比较好解决,把config.inc.php里面的chekip关掉就可以登陆了,$admincp['checkip'] = 0; // 后台管理操作是否验证管理员的 IP, 1=是[安全], 0=否。仅在管理员无法登陆后台时设置 0。


但是UCenter却不能用这种方法解决, 谷歌了很久,官方论坛也没有解决方法,康盛的服务实在是。。。。 只好自己动手了。通过测试发现我的IP刷新页面就变一次,动态IP引起了这个问题。 只好用COOKIE解决了这个问题。 现在可以正常登陆了。

通过这个代码检查数据,然后把COOKIE的在线IP借过来用了。修改以后问题解决了。 试试吧。

根据目录找到文件: UCenter的 model/base.php

查找:

$this->onlineip = $match[0] ? $match[0] : 'unknown';

在这代码之后插入一段代码:

//COOKIE <=> onlineIP : 2010-09-25  Yovae.com

$isonlineIP = isset($_COOKIE['onlineipd']) && !empty($_COOKIE['onlineipd']);

if($isonlineIP){

$this->onlineip = $_COOKIE['onlineipd'];

}else{

setcookie("onlineipd", $this->onlineip, time()+3600, "/");

}

unset($isonlineIP);

保存后上传覆盖问题就解决了。


以上所述方法来自网络,多处都有发,具体出处不详。


按照以上方法可以解决Discuz后台多次登陆才能成功,有时候登陆不了的问题;Ucenter偶尔出现的话影响不是很大,不是很必要的话,可以不要可以去修改。


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 立即注册
验证码 换一个

关于我们| 网站地图| 帮助中心| 商务合作| 法律声明| 诚聘英才| 联系我们
Copyright (c) 2007 - 2013 江西大网 版权所有. All Rights Reserved
赣ICP备08003056号
腾讯分析
回顶部