推荐应用
Ucenter后台登陆 验证码CCCC的解决方法
发布于 2013-03-31
今天在做同步登录的时候,偶然发现ucenter登录的时候,验证码总是CCCC,太郁闷了,网上找了一下,听说Discuz也有这个问题,不过Discuz的比较好解决,把config.inc.php里面的chekip关掉就可以登陆了,
$admincp['checkip'] = 0; // 后台管理操作是否验证管理员的 IP, 1=是[安全], 0=否。仅在管理员无法登陆后台时设置 0。$admincp['tpledit'] = 0; // 是否允许在线编辑论坛模板 1=是 0=否[安全]$admincp['runquery'] = 1; // 是否允许后台运行 SQL 语句 1=是 0=否[安全]$admincp['dbimport'] = 1; // 是否允许后台恢复论坛数据 1=是 0=否[安全]$admincp['checkip'] = 0; // 后台管理操作是否验证管理员的 IP, 1=是[安全], 0=否。仅在管理员无法登陆后台时设置 0。$admincp['tpledit'] = 0; // 是否允许在线编辑论坛模板 1=是 0=否[安全]$admincp['runquery'] = 1; // 是否允许后台运行 SQL 语句 1=是 0=否[安全] $admincp['dbimport'] = 1; // 是否允许后台恢复论坛数据 1=是 0=否[安全]
;
但是UCenter却不能用这种方法解决, 通过测试发现我的IP刷新页面就变一次,动态IP引起了这个问题。 只好用COOKIE解决了这个问题。 现在可以正常登陆了。
通过这个代码检查数据,然后把COOKIE的在线IP借过来用了。修改以后问题解决了。 试试吧。
根据目录找到文件: UCenter的 model/base.php
查找:
$admincp['checkip'] = 0; // 后台管理操作是否验证管理员的 IP, 1=是[安全], 0=否。仅在管理员无法登陆后台时设置 0。$admincp['tpledit'] = 0; // 是否允许在线编辑论坛模板 1=是 0=否[安全]$admincp['runquery'] = 1; // 是否允许后台运行 SQL 语句 1=是 0=否[安全]$admincp['dbimport'] = 1; // 是否允许后台恢复论坛数据 1=是 0=否[安全]$admincp['checkip'] = 0; // 后台管理操作是否验证管理员的 IP, 1=是[安全], 0=否。仅在管理员无法登陆后台时设置 0。$admincp['tpledit'] = 0; // 是否允许在线编辑论坛模板 1=是 0=否[安全]$admincp['runquery'] = 1; // 是否允许后台运行 SQL 语句 1=是 0=否[安全] $admincp['dbimport'] = 1; // 是否允许后台恢复论坛数据 1=是 0=否[安全]
;
但是UCenter却不能用这种方法解决, 通过测试发现我的IP刷新页面就变一次,动态IP引起了这个问题。 只好用COOKIE解决了这个问题。 现在可以正常登陆了。
通过这个代码检查数据,然后把COOKIE的在线IP借过来用了。修改以后问题解决了。 试试吧。
根据目录找到文件: UCenter的 model/base.php
查找:
$this->onlineip = $match[0] ? $match[0] : 'unknown';
在这代码之后插入一段代码://COOKIE <=> onlineIP : 2010-09-25 discuzlab.com
$isonlineIP = isset($_COOKIE['onlineipd']) && !empty($_COOKIE['onlineipd']);
if($isonlineIP){
$this->onlineip = $_COOKIE['onlineipd'];
}else{
setcookie("onlineipd", $this->onlineip, time()+3600, "/");
}
unset($isonlineIP);
保存后上传覆盖问题就解决了。