先确认订阅返回格式
Clash 订阅能否导入,取决于链接返回的内容与客户端支持的配置格式,而不是链接是否以 .yaml 结尾。优先使用订阅提供方标注的「Clash」或「Clash Meta / mihomo」入口,再在客户端中导入。一个普通 HTTPS 地址可能返回完整配置,也可能返回 Base64 节点列表、登录页面或错误提示。
客户端是管理配置、系统代理和内核的图形界面;mihomo 是执行代理协议与分流规则的内核。界面提供「导入订阅」按钮,不代表内核能直接读取所有订阅格式。某些客户端会先转换内容,另一些只接受 Clash YAML,必须分别确认。
| 拿到的内容 | 识别特征 | 处理方式 |
|---|---|---|
| 完整 Clash YAML | 常见顶层字段为 proxies、proxy-groups、rules | 使用 URL 配置导入或本地配置导入 |
| 节点提供者 YAML | 通常只有 proxies 节点列表 | 交给 proxy-providers 引用,或使用客户端明确支持的合并功能 |
| Base64 节点列表 | 解码后出现多行 ss://、vmess:// 等 URI | 使用提供方的 Clash 输出,或可信的本地转换工具 |
| 网页或错误数据 | 出现 HTML 标签、登录表单、JSON 错误消息 | 检查链接、授权状态和订阅有效期,不能作为 YAML 加载 |
通过 URL 导入订阅
从订阅提供方复制完整地址,保留查询参数。URL 中的令牌通常就是访问凭据;复制时漏掉问号后的内容,可能导致 HTTP 401 或 403。不要把网页登录地址、购买页面或二维码图片地址当成订阅地址。
导入与启用分开检查
- 进入配置管理。在客户端中打开「配置」「订阅」或
Profiles页面,选择带有 URL 输入框的远程导入入口。不同客户端名称不同,应以实际界面为准。 - 粘贴完整 URL。输入框只保留链接本身,不带聊天软件附加的引号、说明文字或换行。优先使用提供方给出的 HTTPS 地址。
- 执行下载或导入。等待配置条目出现,再查看更新时间与错误提示。以旧版 Clash for Windows 的英文界面为例,路径是
Profiles → URL 输入框 → Download;该客户端已停止维护,这一路径仅用于辨认存量界面。 - 选中配置。下载完成后,点击该配置条目使其成为当前配置。如果界面提示重载失败,应先查看日志,不能仅凭列表中存在条目判断成功。
- 检查运行状态。在规则模式下确认策略组已加载,并选择可用策略。桌面客户端还需按使用场景开启系统代理或 TUN,配置导入本身不等于流量已经接管。
建议按「下载成功 → 解析成功 → 配置已激活 → 流量接管生效」四步验证。只完成第一步时,浏览器仍可能沿用原来的连接方式;解析失败时,客户端也可能继续使用上一份有效配置。需要安装入口时,可先到客户端下载页选择系统,再对照安装与配置教程操作。
导入本地 YAML 文件
本地 YAML 适合离线保存、迁移配置和排查格式问题。操作入口通常位于「配置」页面的「导入文件」或文件拖放区域。导入后还要主动选中配置,并确认客户端日志没有语法错误。
文件导入前的三项检查
- 编码与扩展名:使用 UTF-8 文本,确认文件不是
config.yaml.txt。在文件管理器中开启扩展名显示,比仅看图标更可靠。 - 缩进与层级:YAML 缩进使用空格,不用 Tab。同级字段对齐;列表项的短横线与所属字段层级要正确。
- 配置是否完整:只有节点列表的 YAML 不等于完整分流方案。需要实际使用的策略组、规则和 DNS 设置,应由主配置提供。
下面是一份用于说明层级的最小直连配置。它没有远程代理节点,不能用于验证订阅节点是否可用。若仅用于检查导入与解析流程,应先备份当前配置,测试后切回原配置。
mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
proxies: []
proxy-groups:
- name: 手动选择
type: select
proxies:
- DIRECT
rules:
- MATCH,手动选择
mixed-port: 7890 设置本地 HTTP 与 SOCKS 共用监听端口,不是远程节点端口。mode: rule 表示按规则匹配;末尾的 MATCH 将剩余连接交给「手动选择」组,而该组仅包含 DIRECT,因此示例中的连接走直连。端口若已被占用,配置即使语法正确也可能无法正常启动监听。
识别 Base64 节点列表
Base64 是编码方式,不是 Clash 配置语法,也不是加密保护。常见通用订阅会把多条节点 URI 合并后编码,解码后可能出现 ss://、trojan://、vmess:// 或 vless://。这类文本一般不包含完整的策略组与规则。
识别后选择兼容路径
- 先在提供方页面寻找明确标注的 Clash 或 mihomo 订阅格式。相同账户可能提供多个输出地址,应复制适用于当前内核的那一个。
- 如果只有通用订阅,查看客户端是否明确支持 URI 列表或 Base64 导入。支持单节点 URI,不一定意味着支持整段 Base64 订阅。
- 确需转换时,优先选择提供方转换或可信的本地工具。转换过程需要解析节点协议、传输层和 TLS 等字段,不能用改扩展名代替。
- 转换完成后,检查节点数量、策略组引用和内核报错,再决定是否启用。解析通过不代表每个节点的连接参数都正确。
原版 Clash 与 Clash Meta(现称 mihomo)的协议和字段支持并不完全相同。转换工具生成了某种协议字段,也不代表旧内核能够运行它。遇到 unsupported proxy type 一类错误,应核对当前实际运行的内核与订阅目标格式,而不是反复重新导入同一文件。
设置订阅更新间隔
整份远程配置更新与节点提供者更新是两套机制。图形客户端负责下载远程配置;mihomo 的 proxy-providers 则可定时获取节点集合。不要把两处的 interval 或界面数值混为一谈,也不要把健康检查周期当成订阅刷新周期。
| 更新位置 | 更新对象 | 单位与示例 |
|---|---|---|
| 客户端远程配置设置 | 完整配置文件 | 按界面单位设置;若明确为分钟,360 表示 6 小时 |
proxy-providers 下的 interval | 指定提供者的节点列表 | 单位为秒;21600 表示 6 小时 |
health-check.interval | 节点连通性检查 | 单位为秒;300 表示每 5 分钟检查,不会下载新订阅 |
日常使用可先以 6 小时作为更新安排,再根据提供方限制调整;这是设置示例,不是协议要求。如果客户端支持读取响应中的更新建议,实际行为还取决于该客户端的实现。账户服务端变更后,可先手动更新一次,再检查更新时间和节点列表。
更新后保留本地设置
远程配置更新可能覆盖直接写入其中的端口、规则和 DNS 修改。需要长期保留本地调整时,应使用客户端支持的覆写、合并或扩展配置功能,并确认合并结果。不要假定编辑远程文件后,下一次订阅更新仍会保留这些内容。
此外,完整配置订阅可能包含规则和外部资源引用,而不只是节点。导入前应确认来源可信,检查 allow-lan、控制接口与监听地址等设置是否适合当前设备。普通个人桌面场景不应为了完成导入而随意开放局域网访问。
导入失败的排查顺序
先区分下载失败、内容格式错误和运行失败,再处理对应环节。频繁重复点击导入通常不能修复格式问题,还可能触发提供方的请求频率限制。
| 现象 | 优先检查 | 下一步 |
|---|---|---|
| HTTP 401 或 403 | 令牌、账户状态、访问限制 | 从提供方后台重新复制链接;不要把状态码直接等同于某一种原因 |
| HTTP 429 | 请求频率是否过高 | 停止连续刷新,遵循服务端重试提示并延长更新间隔 |
| 返回 HTML 或解析首行报错 | 是否进入登录页、验证页或重定向错误页 | 检查最终响应正文,确认拿到的是订阅数据 |
| YAML 缩进或字段报错 | 文件内容、缩进、重复键、协议支持 | 根据日志定位行号,核对是否下载了正确目标格式 |
| 导入成功但没有预期节点 | 是否为节点提供者文件、账户是否返回空列表 | 检查配置类型与提供方状态,再核对策略组引用 |
| 配置启用后仍不能访问 | 当前配置、组内选择、系统代理或 TUN、DNS | 按流量路径逐项检查,不要只反复下载订阅 |
浏览器能打开,客户端却下载失败
浏览器与客户端可能使用不同的代理路径、DNS 或请求头。浏览器显示了下载结果,并不能证明客户端的请求也能到达同一地址。先查看日志中的超时、证书或域名解析错误;若客户端提供订阅下载代理选项,再按其说明选择。不要通过关闭证书验证来掩盖连接问题。
订阅尚未导入,下载却依赖代理
这是首次配置时可能遇到的循环依赖。可以在已能访问提供方的可信设备或网络中下载 YAML,再通过本地文件完成初次导入;之后回到原设备验证远程更新。传输配置时要按敏感文件处理,避免放入公开网盘或共享群。
完成排查后,应同时确认三项结果:当前激活的是目标配置,日志没有持续的解析或资源下载错误,测试连接命中了预期策略。字段含义与规则写法可继续查阅配置文件参考;常见接管问题可查阅FAQ。订阅更新成功只能证明获取与加载链路正常,节点连通性仍需单独验证。