prezto / ipfilter
PSR-7 ip过滤器中间件。根据用户定义的规则,必要时将状态码设置为401。
0.3
2016-05-22 16:02 UTC
Requires
- php: >=5.5.0
- psr/http-message: >=1.0
This package is not auto-updated.
Last update: 2024-09-26 00:39:02 UTC
README
PSR-7 IpFilter
## 允许模式
默认的允许规则集允许所有连接通过,除非地址匹配
拒绝模式
默认的拒绝规则集将拒绝所有连接通过,除非地址匹配。
用法
use Prezto\IpFilter\IpFilterMiddleware; use Prezto\IpFilter\Mode; # Instantiate with a single address. Allow only one ip. $filter = new IpFilterMiddleware(['192.168.1.7'], Mode::DENY) # Instantiate with an address range. Allow only this range. $filter = new IpFilterMiddleware([['192.168.1.100', '192.168.1.200']], Mode::DENY) # Adding addresses after instantiating. $filter->addIpRange('192.168.1.100', '192.168.1.200'); $filter->addIp('192.168.1.98');
之后,您可以将类添加到接受 $request, $response 和 next 作为参数的 psr7 中间件加载器中。
默认情况下,当用户被拒绝访问时,分配了一个错误处理器。您可以通过调用 setHandler 方法并传递一个函数/可调用对象作为参数来自定义它。此函数的参数需要是 $request, $response。如果访问被拒绝,它将在调用处理器后中断执行。