先区分:订阅下载失败,还是配置启用失败
打开客户端的「订阅」或「配置」页面,找到出错的订阅卡片,记录最后更新时间,再执行一次手动更新。随后打开「日志」,保留这次操作对应的报错。先判断失败发生在哪一步,再调整网络和更新周期,避免把节点故障当成订阅故障。
- 下载阶段失败:出现
timeout、connection refused、no such host或 HTTP 错误码,优先检查订阅地址与访问路径。 - 解析阶段失败:已经收到内容,却出现
yaml、unmarshal、unsupported proxy type,优先检查返回格式与内核支持情况。 - 启用阶段失败:订阅显示更新成功,但切换配置时报错,检查规则引用、代理组名称与配置合并结果。
- 节点连接失败:配置已经加载,只有节点测速超时。这是节点可用性问题,反复刷新订阅不一定有用。
按报错定位:超时、证书与 HTTP 状态码
同一个“更新失败”提示,可能对应完全不同的原因。下面的状态码指订阅下载请求的响应,不是节点测速结果。优先查看客户端日志中的完整错误类型,不要只看卡片上的红色提示。
| 日志或状态 | 常见原因 | 优先操作 |
|---|---|---|
timeout、context deadline exceeded | 连接、TLS 握手或读取响应超时 | 换网络,并对比直连与经代理更新 |
no such host | 订阅域名解析失败,或域名拼写有误 | 核对域名,检查当前网络的 DNS |
x509、证书过期 | 系统时间异常、证书链异常或网络拦截 | 同步系统时间,换网络后复测 |
401、403 | 凭据失效、访问限制或服务端防护 | 从服务方账户页重新复制专用订阅地址 |
404、410 | 旧接口失效、资源迁移或链接被撤销 | 核对服务方公布的新订阅入口 |
429 | 请求过于频繁,触发限流 | 停止连续刷新,按服务端要求等待 |
500、502、503 | 订阅服务或上游暂时异常 | 稍后重试,查看服务方状态说明 |
超时:先换路径,不急着改规则
先用移动热点替代当前 Wi-Fi,再手动更新一次。如果热点成功,原网络失败,重点检查原网络的 DNS、访问限制或网关。若只有经代理更新成功,说明订阅接口需要借助已有代理路径访问;若经代理失败而直连成功,则检查当前代理节点和客户端的订阅下载方式。
部分客户端允许配置下载超时时间。可以把 10 秒调整为 30 秒做对照测试,但这只是诊断示例,不是所有客户端都有该选项。域名无法解析、凭据已失效时,延长等待没有帮助。
证书错误:校时,再检查网络环境
在 Windows 11 打开「设置」→「时间和语言」→「日期和时间」,启用自动设置时间,并执行「立即同步」。系统时间偏差会影响证书有效期判断。若只有公司或校园网络出错,换手机热点复测;需要组织证书的设备,应按管理员提供的流程配置系统信任。
不要把关闭证书验证当作常规修复。订阅内容包含节点地址和认证信息,跳过验证会削弱下载过程的身份确认。尤其要区分:节点配置里的 skip-cert-verify 控制相应节点连接的证书验证,并不能通用地修复客户端订阅下载的 TLS 错误。
检查返回内容:YAML、Base64 与登录页面
能下载到文本,不等于下载到了 Clash 配置。常见误用是复制账户后台的网址、只适用于其他客户端的订阅链接,或者复制时漏掉 URL 后半段参数。回到服务方账户页,选择明确标注 Clash 或 mihomo 适用的订阅入口,完整复制,不手动删改令牌。
按内容判断格式
- 完整 Clash 配置:通常包含
proxies或proxy-providers,以及代理组、规则等配置。具体字段随服务方生成方式变化,不能只凭文件扩展名判断。 - 代理提供器内容:常见为以
proxies:组织的节点集合,应由主配置里的proxy-providers引用,不能默认当作完整配置启用。 - Base64 节点列表:解码后可能是一行行协议链接。它不等同于 Clash YAML;客户端是否支持导入或转换,要看具体实现。
- HTML 页面:如果内容以
<!DOCTYPE html>开头,或包含登录、验证、访问拒绝文字,拿到的通常是网页而不是订阅配置。
浏览器能打开订阅,并不代表客户端一定能下载。浏览器可能带有登录 Cookie,客户端一般不会继承这些登录状态;浏览器与客户端也可能走不同代理路径。若接口要求网页登录或交互验证,应向服务方索取面向客户端的专用订阅入口。
解析报错:核对内核,不直接改缩进碰运气
遇到 unsupported proxy type,先查看客户端「关于」或内核信息页,记录客户端版本与内核名称。Clash 生态中的不同内核支持范围并不相同,面向 mihomo 生成的配置未必适用于较旧的 Clash 内核。可在服务方提供的格式选项中选择兼容格式,或选用支持所需协议的客户端。
遇到带行号的 YAML 错误,再检查对应位置的缩进、冒号和引号。远程配置如果每次更新都会覆盖本地文件,应修复上游生成内容或客户端的覆写规则,而不是只改缓存文件;否则下一次更新仍会复现。
经代理更新:使用现有可用节点完成下载
“系统代理已开启”和“订阅经代理下载”不是同一设置。订阅请求可能由客户端自身发出,也可能由内核处理;是否遵循系统代理,取决于客户端实现。仅切换规则模式、全局模式或 TUN 模式,不能保证改变订阅下载路径。
- 启用当前仍能工作的旧配置,选中一个可用节点,先确认普通 HTTPS 请求能够完成。
- 打开「订阅」或「配置」,进入目标订阅的编辑或更新菜单,查找「经代理更新」「使用代理」等选项。名称与位置因客户端版本不同而变化。
- 有该选项时启用它,再手动更新一次,并从日志确认结果;没有该选项时,查客户端文档,不要猜测隐藏参数。
- 更新成功后,核对更新时间、节点列表和配置启用状态,再决定是否长期保留这条下载路径。
以本机混合端口实际设为 7890 的 Windows 设备为例,可以在 PowerShell 做下面两项检查。如果客户端显示的是其他端口,应使用界面里的真实端口。
Test-NetConnection 127.0.0.1 -Port 7890
curl.exe --proxy http://127.0.0.1:7890 --connect-timeout 10 --max-time 30 -I https://clash13.com/
第一条只检查本机端口是否接受连接;第二条测试显式经过本机 HTTP 代理的 HTTPS 请求。站点响应只能说明这次请求的结果,不能证明订阅接口可达,也不能证明客户端订阅请求使用了相同路径。若代理入口启用了认证,还需按本机设置提供认证信息。
自动更新间隔:区分客户端订阅与提供器
自动更新存在两个层级:客户端定时下载整份远程配置,以及 mihomo 定时刷新配置里的代理提供器。它们可以同时存在,但互不等价。客户端卡片上的更新时间,也不一定代表某个提供器刚刚刷新过。
整份订阅:在客户端订阅编辑页设置
进入「订阅」或「配置」→目标订阅菜单→「编辑」,查找自动更新开关和更新间隔。先读输入框旁的单位:填写 360,若单位是分钟,就是 6 小时;若单位是秒,则只有 6 分钟。没有自动更新选项的客户端,不能靠在 YAML 顶层随意增加 interval 来补齐这个功能。
- 日常使用:可先选择 6 小时或 12 小时,分别对应 360 分钟和 720 分钟,再遵循服务方规定调整。
- 节点变更较少:可选择 24 小时,即 1440 分钟,减少不必要的请求。
- 正在排障:手动更新一次后查看日志,不要临时改成每分钟刷新。
这些是配置建议,不是客户端默认值。电脑休眠、客户端退出、手机后台受限或网络断开时,定时任务可能无法执行;恢复运行后是否补跑,取决于客户端。时间间隔到了但没有更新,应先确认程序是否持续运行,而不是立即认定服务器异常。
代理提供器:interval 使用秒
对于 mihomo 的 HTTP 代理提供器,proxy-providers 下相应提供器的 interval 以秒计。6 小时是 21600 秒,12 小时是 43200 秒,24 小时是 86400 秒。修改时保留该提供器原有的 URL、路径及其他字段,只调整其刷新间隔。
提供器内部 health-check 的 interval 用于节点健康检查,不是下载订阅。把健康检查设成 300 秒,并不表示节点列表每 5 分钟刷新。也不要把提供器的秒数直接复制到客户端标注“分钟”的输入框里。
手动强制刷新:验证结果,再处理缓存
“强制刷新”并不是所有客户端共有的按钮。有的只有「更新」,有的另有「全部更新」「更新代理提供器」。先明确要刷新整份远程配置,还是配置内部的提供器;仅更新外层配置,不一定会立即重新下载所有提供器。
- 备份与记录:保存当前可用配置,记下目标订阅名、最后更新时间和更新前的节点数量。
- 触发一次:对目标订阅执行「更新」,等待该次请求结束。出现
429时停止重复点击。 - 验证加载:确认日志显示下载、解析和加载成功。若客户端要求手动启用新配置,再执行切换。
- 核对内容:查看已知变更的节点或规则。节点数量没变,不代表没有更新;服务端也可能返回内容未变的结果。
- 最后处理缓存:只有确认地址正确、响应有效而客户端持续读取旧内容时,才按该客户端文档处理目标缓存,不要清空整个配置目录。
不要随意在订阅 URL 后追加随机参数来“破缓存”。部分服务使用签名或严格校验查询参数,修改后可能直接失效。收到 304 Not Modified 通常表示服务端认为现有缓存仍有效,也不应仅凭这个状态判断更新失败。
仍然失败时:整理可复现信息
先做一轮最小对照:同一订阅分别测试原网络与手机热点,再测试直连与经代理下载。每种方式只触发一次,记录时间与错误。四种结果足以帮助区分网络路径、订阅服务和客户端处理问题,比连续点击十次更容易定位。
- 记录操作系统、客户端准确版本、内核名称及版本,不只写“最新版”。
- 记录订阅下载的错误码、是否解析成功,以及出错发生的本地时间和时区。
- 说明系统代理、TUN 和订阅经代理更新各自是否开启。
- 提供已脱敏的错误片段;不公开完整订阅地址、节点密码或原始配置。
恢复后,再把自动更新设为合理周期,并保留一份已验证可用的配置。订阅更新负责获取配置,节点连通性、规则分流与应用是否走代理则需要分别验证。把这些步骤拆开,后续遇到同类故障就能直接从对应环节开始排查。