- 记录
- 相册
- 主题
- 分享
- 精华
- 积分
- 43490
- 好友
- 注册时间
- 2013-10-12
- 帖子
- 互助币
- 枚
- 爱心币
- 枚
- 经验值
- 点
- 贡献值
- 点
- 水表量
- 升
- 推广币
- 元
- 最后登录
- 1970-1-1
- 在线时间
- 小时
|
因为17推论坛也是discuz程序搭建的,之后一直都是升级到官方的最新版,但是很多次都发现都会有各种各样的问题,管理员后台登陆不上,ucenter也登陆不上,而且验证码一直是CCCC,那这种情况是如何产生的呢?
这类问题大部分是因为你是动态ip导致,修改discuz的config配置文件,把ip验证给关闭掉,就OK了。
方法如下:
将 config/config_global.php 文件,将 $_config[‘admincp’][‘checkip’] 的值改为 0,这样就行了。
但是登录进去后台后,发现Ucenter进不去了,也是一样的问题,这个问题解决原理是一样的,但是就没有Dsicuz后台登陆那么方便,只好自己动手了。 通过测试发现IP刷新页面就变一次,动态IP引起了这个问题。 只好用COOKIE解决了这个问题。 现在可以正常登陆了。
通过这个代码检查数据,然后把COOKIE的在线IP借过来用了。修改以后问题解决了。 试试吧。
根据目录找到文件: UCenter的 model/base.php
查找:
- $this->onlineip = $match[0] ? $match[0] : ‘unknown';
- 在这代码之后插入一段代码:
- $isonlineIP = isset($_COOKIE[‘onlineipd’]) && !empty($_COOKIE[‘onlineipd’]);
- if($isonlineIP){
- $this->onlineip = $_COOKIE[‘onlineipd’];
- }else{
- setcookie(“onlineipd”, $this->onlineip, time()+3600, “/”);
- }
- unset($isonlineIP);
复制代码
保存后上传覆盖问题就解决了。
虽说问题是解决了,但是有一个疑问就是Ucenter一直都是可以登陆的,从来没有因为动态IP产生过这类问题,但忽然出现这种问题令人很疑惑。
|
|