Web 防护请求处理顺序

最近更新时间:2026-04-02 15:32:21

我的收藏
EdgeOne Web 防护功能由多个安全模块组成,请求按固定顺序依次经过每个模块。如果某模块对请求执行了终止性处置动作(例如:拦截、JS 挑战),请求将停止流转,不会进入后续模块。

模块执行顺序

请求按以下顺序依次经过各安全模块:
顺序
模块
说明
1
匹配后跳过指定的后续安全模块或规则
2
基于 IP、地域、请求特征等条件执行处置
3
统计请求频率,超过阈值时执行处置
4
自适应频控、智能客户端过滤等由 EO 平台托管的规则
5
识别和管理 Bot 流量
6
基于预置规则集检测常见 Web 攻击

终止性处置动作 与 非终止性处置动作

处置方式分为两类,它们对请求处理链路的影响不同:
终止性处置动作(拦截、封禁 IP、JS 挑战、托管挑战、重定向、返回指定页面):立即结束请求处理,后续模块不再执行
非终止性处置动作(放行、观察):请求继续进入后续模块检查。
注意:
“放行”是非终止性处置,仅表示请求通过了当前模块。例如在自定义规则中配置"放行"后,请求仍会继续进入速率限制、CC 攻击防护、Bot 管理、托管规则等后续模块。如果后续模块对请求执行了终止性处置,请求仍然会被拦截。如需让特定请求跳过后续安全模块的检查,请使用 防护例外规则

模块内的规则匹配逻辑

自定义规则与速率限制

自定义规则和速率限制模块中包含多条规则时,按优先级从高到低匹配(优先级数值越小,优先级越高)。高优先级规则执行终止性处置后,本模块内剩余规则不再匹配。
当多条规则优先级相同时,按以下处置方式顺序执行:观察 → 放行 → 托管挑战 → JS 挑战 → 重定向 → 返回指定页面 → 封禁 IP → 拦截

CC 攻击防护

请求匹配多条规则时,所有匹配的规则均生效

速率限制的计数机制

命中的所有规则均独立计数,某条规则触发处置不影响其他规则的计数。

防护例外规则 vs 自定义规则“放行”

对比项
防护例外规则
自定义规则“放行”动作
执行位置
模块 1(最先执行)
模块 2
作用范围
跳过后续指定模块或规则的检查
仅通过自定义规则模块
后续模块
被指定跳过的模块或规则不会检查该请求,其他模块或规则正常检查
后续模块正常检查

相关文档