本页目录
订阅能导进来,为什么节点还是要手动选?一更新服务商配置,自己的规则又没了?这篇就把 Surge 配置文件拆开看:基础设置、策略组、规则各管什么,订阅更新和节点测速为什么是两件事,最后怎样导入并验证。已经跑通单条订阅、想接管自己的配置,再从这里开始;还没入门的先看基础用法和订阅聚合。
先看整份文件,再认三个区块
打开一份事先备份、删去个人订阅凭证的配置。可以对照我维护的示例,但仓库里的文件会变,不保证与这里讨论的旧版本逐行相同。# 开头是注释,先别急着背参数,找到这三个区块:
| 区块 | 回答的问题 | 核对重点 |
|---|---|---|
[General] | 整体网络和测试环境怎么设 | DNS、测试地址、局域网排除项是否适合自己 |
[Proxy Group] | 节点从哪来、怎么分组和选择 | 订阅路径、组类型、测试与更新参数 |
[Rule] | 某个请求最终交给谁 | 匹配顺序、指向的组、兜底策略 |
从第一行策略组看起:前面的名称可以自己起,后面的 url-test 表示按测试结果自动选择,select 则允许手动选择。要对照文本中的字段位置,可以从 01:35 看策略组拆解。组名改了,引用它的其他组和规则也要一起改;只改显示名称,后面就可能找不到它。
拆开“自动选择”这一行的两只时钟
我用 policy-path 引入节点订阅地址,再分别设置两个容易看花眼的时间:
| 参数 | 管什么 | 配置里的例子 |
|---|---|---|
update-interval | 从远端重新获取 policy-path 的节点内容;路径是 URL 时才有意义 | 86400 秒,即约一天 |
interval | url-test 测试结果多久后过期 | 300 秒,即五分钟 |
tolerance | 新候选比当前结果好多少才切换 | 设定容差,避免两个接近的节点来回跳 |
“结果五分钟后过期”不等于每隔五分钟无条件测速。Surge 官方自动测试说明指出,策略组被再次使用且结果已过期时才会触发重测;网络变化也会使结果失效。update-interval 则是另一条远程资源更新链路,具体含义见外部策略说明。我的例子里,订阅约一天拉一次,测试结果有效期五分钟,别把两个动作混成“每五分钟更新订阅”。
测速目标与容差也会改变选择结果。比如当前 A 的测试成绩是 50 ms、B 是 10 ms,容差设 100 ms,差距还不够大,就可能留在 A;如果 A 变成 150 ms,才会改选 B。这只是官方解释容差的对照例子,不是我某个真实节点的速度。测试地址可达,不代表你访问的所有网站都快。
旧配置可能在策略组行写 url= 指定测试地址;现行官方说明明确说这一旧写法在当前版本不生效,应检查策略自身的 test-url 或 [General] 中的全局测试地址。看旧配置时理解原意即可,别不经核对直接复制到新版本。
组还能引用组:从手动切换到地区筛选
下一行“手动切换”用 select,由人决定选哪个节点;再往下的“节点选择”组,可以把“自动选择”和“手动切换”作为两个候选。这样日常交给自动测试,确有需求时又能切回来。
广告
地区组用 filter 按节点名称筛选候选,再分别测试;上层组还可以引用几个地区组,先在各地区选候选,再在候选之间选一次。我给某些服务准备过“不含香港”的组,正是因为希望控制候选地区。但名字里写 HK 不代表实际出口必在香港,服务商改名后筛选还可能为空;改完最好查请求出口。
对照服务商那份托管配置,有的直接在 [Proxy] 枚举所有节点、策略组清一色手动选择。两种写法都能连上,只是手动维护与订阅引用的工作量不同;自己的配置把节点来源交给订阅,把选择逻辑留下。
规则怎么从上到下决定出口
在 [Rule] 中,域名后缀规则可以指定一个服务的请求交给某个组、DIRECT 或 REJECT;RULE-SET 则引用一组外部规则,命中其中一条就按该行的策略处理。外部规则集也可能设置自己的更新间隔,和节点订阅、节点测速仍是不同资源。导入之前先打开规则集看看内容与维护来源,别因“自动更新”就默认永远正确。
匹配从上到下进行,先命中就不会继续走后面的规则。GEOIP 用目标 IP 的位置数据参与判断,最后的 FINAL 接住前面都未命中的请求。宽泛的拒绝规则若放太靠前,后面更精确的规则就没有机会;调整后用请求查看器看具体域名、命中规则与最终出口,而不是只看网页打不开就猜原因。
保存、导入,再检查真实请求
备份并保存为自己的配置文件,在 Surge → 更多 → 配置 → 导入 中选择它,双击并应用。检查节点组是否出现,访问自己准备的目标网站,同时在请求查看器里核对命中规则和出口;订阅更新后再试一次,确认自有规则没有被整份托管配置替换。
我当初导入的配置弹出过 CA 证书提示,也按界面安装过。但这和节点分组、分流不是同一个步骤:普通代理不要求信任一个用于 HTTPS 解密的 CA。先查配置为什么要求解密、涉及哪些域名及权限;不需要就关闭相关功能,不要为了消掉弹窗直接授权。需要回退时切回备份配置,再核对证书身份与用途,谨慎撤销信任。
抓住这三层,配置就没那么玄乎:节点从哪来,看 policy-path;节点怎么选,看策略组;请求去哪,看规则。小范围改动未必每次都要重新编辑文件,下一篇图形界面分流就从一条真实请求开始。若你这里遇到“订阅有节点,分组却是空的”,欢迎在评论里说说组类型、筛选条件与报错信息,别公开贴带凭证的整份配置。
广告




