Redis限制在规定时间范围内登陆错误次数限制
Posted 御世制人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis限制在规定时间范围内登陆错误次数限制相关的知识,希望对你有一定的参考价值。
//登录错误次数校验 $key = "login_{$username}"; $res = $this->_redisVerify($key,10,1800);//半小时内密码输入错误10次 if(!$res){ echo "手机号或密码错误次数过多,请稍后再试"; }else{ echo "手机号或密码错误"; }
/** * redis限制 * @param $key : redis key * @param $times : 次数 * @param $time : key有效时间 * @return bool */ private function _redisVerify($key,$times,$time = 86400){ $redis = new Utils_Redis(); $redis->select(11);//选择db 10 $value = (int)$redis->get($key); if($value && $value < $times){//防刷次数 $redis->increment($key);//如果有手机号键名,添加次数 }elseif(!$value){ $redis->set($key,1,$time);//设置TimeOut }elseif($value >= $times){ return false; } return true; }
以上是关于Redis限制在规定时间范围内登陆错误次数限制的主要内容,如果未能解决你的问题,请参考以下文章
StringBoot+redis-用户登陆限制密码输入次数(超出后禁用两个小时)
关于JAVA的WEB开发,想在页面中实现在一段时间内限制同一个IP登陆失败次数过多