uri-blocker 插件
更新时间 2026-04-21 15:48:56
最近更新时间: 2026-04-21 15:48:56
本文将详细介绍uri-blocker插件功能、配置和使用。
功能说明
uri-blocker 插件通过指定一系列 block_rules 来拦截用户请求,实现了基于URI屏蔽HTTP请求,并且自定义返回码和响应体,可以用于防护部分资源不对外部暴露。
配置字段
| 名称 | 类型 | 填写要求 | 默认值 | 有效值 | 描述 |
|---|---|---|---|---|---|
| block_rules | array[string] | 必填 | 正则过滤数组。它们都是正则规则,如果当前请求 URI 命中其中任何一个,则将响应代码设置为 rejected_code 以退出当前用户请求。例如:["root.exe", "root.m+"]。 | ||
| rejected_code | integer | 可选 | 403 | [200, ...] | 当请求 URI 命中 block_rules 中的任何一个时,将返回的 HTTP 状态代码。 |
| rejected_msg | string | 可选 | 非空 | 当请求 URI 命中 block_rules 中的任何一个时,将返回的 HTTP 响应体。 | |
| case_insensitive | boolean | 可选 | false | 是否忽略大小写。当设置为 true 时,在匹配请求 URI 时将忽略大小写。 |
配置示例
uri-blocker 使用示例
block_rules:
- root.m+
- root.exe
rejected_code: 405
rejected_msg: “This uri is not allowed to be visited”
case_insensitive: true根据该场景请求路由
curl http://example.com/root.exe
curl http://example.com/Root.exe当前请求的URI命中了配置中的正则表达式,且在匹配时忽略大小写。请求将返回应答如下
HTTP/1.1 405 Not Allowed
......
{"error_msg":"This uri is not allowed to be visited"}配置模板
#[必填]正则过滤数组,不可重复。如果当前请求 URI 命中其中任何一个,则将响应代码设置为 rejected_code 以退出当前用户请求
block_rules:
- test.com+
#[可选]当请求 URI 命中 block_rules 中的任何一个时,将返回的 HTTP 状态代码。有效值[200,...], 默认值403
#rejected_code: 403
#[可选]当请求 URI 命中 block_rules 中的任何一个时,将返回的 HTTP 响应体
#rejected_msg: “This URI is not allowed to be accessed ”
#[可选]匹配URI时是否忽略大小写.默认false
#case_insensitive: false