在PHP中使用IP阻止客户端

时间:2017-06-23 19:47:18

标签: php mysql

我有一个PHP网站,我有一些用户使用owasp-zap并注册自动帐户和完整的数据库。我想在我的网站上注册一个帐户后,通过IP阻止每个用户1分钟。有办法吗?

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);