\Framework\MiddlewareIpBlockMiddleware

Summary

Methods
Properties
Constants
__construct()
handle()
No public properties found
No constants found
No protected methods found
No protected properties found
N/A
isIpInList()
cidrMatch()
ip2bin()
buildForbiddenResponse()
$whitelist
$blacklist
$enabled
N/A

Properties

$whitelist

$whitelist : array

Type

array

$blacklist

$blacklist : array

Type

array

$enabled

$enabled : bool

Type

bool

Methods

__construct()

__construct(?string  $configFile = null) : mixed

Parameters

?string $configFile

Returns

mixed —

handle()

handle(\Symfony\Component\HttpFoundation\Request  $request, callable  $next) : \Symfony\Component\HttpFoundation\Response

中间件执行方法.

Parameters

\Symfony\Component\HttpFoundation\Request $request

请求对象

callable $next

下一个中间件/控制器的回调

Returns

\Symfony\Component\HttpFoundation\Response —

响应对象

isIpInList()

isIpInList(string  $ip, array  $list) : bool

判断 IP 是否匹配列表中的任意 CIDR 或精确 IP.

Parameters

string $ip
array $list

Returns

bool —

cidrMatch()

cidrMatch(string  $ip, string  $cidr) : bool

判断 IP 是否在 CIDR 网段内.

Parameters

string $ip
string $cidr

Returns

bool —

ip2bin()

ip2bin(string  $ip) : string

将 IPv6 地址转换为 128 位二进制字符串.

Parameters

string $ip

Returns

string —

buildForbiddenResponse()

buildForbiddenResponse(\Symfony\Component\HttpFoundation\Request  $request, string  $reason) : \Symfony\Component\HttpFoundation\Response

Parameters

\Symfony\Component\HttpFoundation\Request $request
string $reason

Returns

\Symfony\Component\HttpFoundation\Response —