A-A+

Discuz!X解决登录时提示“密码错误次数过多,请 15 分钟后重新登陆”

2011年02月20日 Discuz 暂无评论

官方说明:

在使用论坛过程中,有时候会遇到这样的提示“密码错误次数过多,请 15 分钟后重新登陆”,尤其是一个公司使用同一个路由上网的时候,这种情况出现的几率会高一些,而且出现这个错误之后,局域网里的所有人都不能登录了。这种情况的原因是,论坛程序为了防止有人恶意尝试用户密码获取别人账号的情况。下面提供两种方法,用于临时解决局域网内所有人都不能登录的问题。

1、数据库中删除相关记录

用户每次登录错误的时候,会记录在 cdb_failedlogins 表里,所以只要自己在删除这个表中的错误记录就行了。可以通过 phpMyAdmin 删除,或者执行 SQL :

DELETE FROM cdb_failedlogins WHERE ip='IP地址';

1. DELETE FROM cdb_failedlogins WHERE ip='IP地址';

2、修改程序实现

打开 include 目录下的 misc.func.php,找到

$login['count'] < 5

1. $login['count'] < 5

将代码中的5修改一下。因为这是程序的一个安全机制,所以请不要设置的太大。

这是临时解决登录的方法,推荐前者,后者请慎重使用或者不使用。

其他说明:

打开您的include/misc.func.php,查找:

  1. $return = 0;
  2. $login = $db->fetch_first("SELECT count, lastupdate FROM {$tablepre}failedlogins WHERE ip='$onlineip'");
  3. $return = (!$login || ($timestamp - $login['lastupdate'] > 900)) ? 4 : max(0, 5 - $login['count']);

复制代码

将上边的900改为30,即30秒后重新登陆。改为1秒也行。

标签:

给我留言

Copyright © 破晓Web实验室 保留所有权利.   Theme  Ality 沪ICP备14044094号

用户登录