我有一个PHP网站,我有一些用户使用owasp-zap并注册自动帐户和完整的数据库。我想在我的网站上注册一个帐户后,通过IP阻止每个用户1分钟。有办法吗?
答案 0 :(得分:0)
您可以构建一个存储IP的表,并使用每1分钟运行一次的mysql事件并删除该行。您可以查询数据库并比较用户的IP并重定向用户,但是您填写。
您可以使用$ _SERVER ['REMOTE_ADDR']获取用户的IP。
表:
CREATE TABLE auth {
ip varchar(255) not null,
expires datetime not null
};
事件:
CREATE EVENT auth_event ON SCHEDULE AT EVERY 1 MINUTE
DO
DELETE FROM auth WHERE expire < NOW();
PHP插入语句
INSERT INTO auth(ip, expires)
VALUES (?, NOW() + INTERVAL 1 MINUTE);