分流规则为什么没生效:从匹配顺序读懂请求去向
摘要:用一个局部例外说明规则优先级,并通过连接记录确认网站真正命中的规则和出口。
给某个网站增加直连规则后,它仍然走代理,常见原因是规则位置或实际加载的配置不对。分流并非把所有条目一起投票,规则顺序、匹配类型和最终策略都会影响请求去向。先找出一次连接的决策过程,才能知道该改哪一行。
把具体例外放在合适位置
Mihomo按从上到下的顺序匹配规则,上面的条目优先。若前面已有覆盖整个站点的规则,后面新增的子域名例外就可能没有机会生效;UDP请求遇到不支持UDP的代理时还有继续匹配的情况,不能只凭列表位置推断所有流量。路由文档说明了这些行为。
例如希望主站走代理、帮助子域名直连,可以先写帮助子域名的精确规则,再放站点后缀规则,最后安排MATCH处理其余请求。先明确例外,再放较宽的范围,方便检查覆盖关系。这里的顺序属于示例思路,实际策略名称必须对应自己的配置。
精确域名和后缀不是一回事
DOMAIN匹配完整域名,DOMAIN-SUFFIX可以匹配根域名及其子域名。以example.com为例,后缀规则可覆盖www.example.com,却不覆盖content-example.com。按网址里是否“看起来含有同一串字”来判断,容易误加规则。关键字匹配范围更宽,使用前应考虑误匹配。[类型说明](https://wiki.metacubex.one/config/rules/#domain-suffix)给出了后缀边界。
规则命中后还要看出口
规则指向策略组时,请求还会受组内选择影响。手动组可以选择不同节点或允许的其他策略,因此命中预期组名,不代表一定用了预期节点。手动组文档可供核对。还要确认运行在规则模式,其他模式不能照搬同一套判断。模式说明列出了运行方式。
修改前保留原配置,加载后用新的连接访问目标,再查看客户端记录里的域名、命中规则、策略组和出口。网站图片或登录服务可能使用其他域名,必要时分别观察,不要只处理地址栏里的主域名。若订阅更新会重建配置,使用客户端提供的持久覆写机制,并再次确认生效;一次调整一处,能更快发现问题,也更容易撤回。
资料来源
资料核对日期:2026年10月4日(Asia/Shanghai)。本文为原创知识文章,未宣称免费机场或节点实测可用。