HTTP 规则

共有 4 种 HTTP 层级规则类型。USER-AGENT 和 URL-REGEX 需要 HTTP 请求头,因此它们只匹配 HTTP 请求(或启用了 MitM 解密的 HTTPS 请求)。PROTOCOL 只匹配 TUN 入站会话,因为协议嗅探只在其中运行。SCRIPT 对任何连接都会评估。

USER-AGENT

USER-AGENT,Instagram*,DIRECT

如果请求的 User-Agent 匹配,则规则命中。支持通配符 * 和 ?。


URL-REGEX

URL-REGEX,^http://google\.com.*,DIRECT

如果 URL 匹配正则表达式,则规则命中。正则表达式必须匹配完整的 URL,而不是其中的一个子串:仅写 ^http://google\.com 只会匹配到恰好等于 http://google.com 的 URL。


PROTOCOL

PROTOCOL,TLS,Proxy

如果检测到的连接协议匹配,则规则命中。与 sniffing-enabled 结合使用效果最佳。NETWORK 可作为 PROTOCOL 的别名使用。

可接受的协议值:HTTPHTTPSTLSTCPUDPQUICSTUNDNSDOHDOQ

注意:检测到的协议仅会为 TUN 入站会话填充:嗅探对 TCP 产生 HTTPTLS(任何 TLS 连接,包括 HTTPS),对 UDP 产生 QUIC。经由 HTTP 或 SOCKS5 代理入站到达的连接永远不会匹配 PROTOCOL 规则。其他可接受的值为保留值——目前没有检测器会产生它们,因此使用这些值的规则不会匹配。特别地,要匹配 HTTPS 流量,请使用 PROTOCOL,TLS 而非 PROTOCOL,HTTPS


SCRIPT

SCRIPT,MyRuleScript,DIRECT

规则通过执行 JavaScript 脚本实现自定义匹配逻辑。脚本名称必须与 [Script] 部分中定义的 type=rule 脚本匹配。

[Rule]
SCRIPT,CheckInternal,PROXY

[Script]
CheckInternal = type=rule, script-path=internal-check.js

规则脚本接收 $request,并且必须调用 $done({matched: true})$done({matched: false})。注意 $request.dnsResult 仅在会话已被解析时可用(例如,直接使用 IP 地址发起的请求,或 DNS 解析后的第二轮匹配)。

S. Smart Rabbit LLC © All Rights Reserved            updated 2026-08-18 11:57:36

本页为英文版的翻译。如内容有出入,以英文版为准。

results matching ""

    No results matching ""