jobmetric/laravel-ban-ips

这是一个针对 Laravel 的恼人 IP 管理包,您可以在项目中使用。

1.4.0 2024-08-05 15:39 UTC

This package is auto-updated.

Last update: 2024-09-05 15:49:02 UTC


README

Contributors Forks Stargazers MIT License LinkedIn

为 Laravel 禁止 IP

这是一个针对 Laravel 的恼人 IP 管理包,您可以在项目中使用。

通过 composer 安装

运行以下命令以拉取最新版本

composer require jobmetric/laravel-ban-ips

文档

要使用此包的服务,请按照以下说明操作。

迁移

安装包后,您必须运行以下命令进行迁移

php artisan migrate

用法

要使用此包的服务,您必须在您的模型中使用 BanIp 类。

存储禁止 IP

要存储禁止 IP,可以使用以下代码

use JobMetric\BanIp\Facades\BanIp;

BanIp::store([
    'ip' => 'sample ip',
    'type' => 'hacker',
    'reason' => 'This is a sample reason',
    'banned_at' => now(),
    'expire_at' => now()->addDays(1),
]);

注意

ip 字段是必需的,必须是字符串。

type 字段是必需的,必须是以下值之一:hackerspammerbotanother

reason 字段是必需的,必须是字符串。

banned_at 字段是必需的,必须是日期。

expire_at 字段是必需的,必须是大于 banned_at 字段的日期。

更新禁止 IP

要更新禁止 IP,可以使用以下代码

use JobMetric\BanIp\Facades\BanIp;

BanIp::update([
    'type' => 'hacker',
    'reason' => 'This is a sample reason',
    'banned_at' => now(),
    'expire_at' => now()->addDays(1),
]);

注意

type 字段有时是必需的,必须是以下值之一:hackerspammerbotanother

reason 字段有时是必需的,必须是字符串。

banned_at 字段有时是必需的,必须是日期。

expire_at 字段有时是必需的,必须是大于 banned_at 字段的日期。

删除禁止 IP

要删除禁止 IP,可以使用以下代码

use JobMetric\BanIp\Facades\BanIp;

BanIp::delete(/* ban ip id */);

删除过期的禁止 IP

要删除过期的禁止 IP,可以使用以下代码

use JobMetric\BanIp\Facades\BanIp;

BanIp::deleteExpired();

辅助函数

此包包含一些辅助函数,您可以如下使用:

  • storeBanIp:此函数用于存储禁止 IP。
  • updateBanIp:此函数用于更新禁止 IP。
  • deleteBanIp:此函数用于删除禁止 IP。
  • deleteExpiredBanIp:此函数用于删除过期的禁止 IP。

规则

使用此包有一些规则

  • BanIpExistRule:此规则用于检查 IP 是否被禁止。

禁止类型

IP 被禁止可能有各种原因

  • hacker:此类型禁止用于黑客。
  • spammer:此类型禁止用于垃圾邮件发送者。
  • bot:此类型禁止用于机器人。
  • another:此类型禁止用于其他原因。

命令

此包包含一些命令,您可以如下使用:

事件

此包包含一些事件,您可以如下编写监听器:

贡献

感谢您考虑为 Laravel Ban Ip 贡献!贡献指南可以在 CONTRIBUTING.md 中找到。

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件