Clash订阅链接怎么转换成配置文件?
简答:如果订阅链接返回的已经是完整Clash或Mihomo YAML,通常无需转换,直接导入即可;只有返回Base64节点列表、单节点链接或其他不兼容格式时,才需要转换。最快流程是:先在浏览器检查返回内容,再用subconverter的本地接口指定target=clash生成结果,最后保存为.yaml文件并导入Clash客户端。本文按2026年11月3日检索到的官方资料整理。
定义:Clash订阅转换,是把原始订阅中的节点或配置重新整理为Clash客户端可读取的配置内容;转换结果可能包含节点、策略组和规则,但不代表原订阅的所有设置都会原样保留。
先用三步判断:是否真的需要转换
本站是第三方使用指南站,不是任何客户端、订阅服务或配置转换项目的官方网站。不要一开始就把完整订阅链接粘贴到公共转换网站,先在本机检查返回内容。
- 在浏览器地址栏打开订阅链接,或使用本地文本工具请求并查看返回内容。不要把包含令牌的真实链接发到公开聊天、在线解析器或截图中。
- 搜索
proxies:、proxy-groups:和rules:等字段。Mihomo文档分别将这些结构用于代理节点、策略组和路由规则,可作为识别配置结构的参考。查看Mihomo代理节点字段、查看Mihomo策略组字段、查看Mihomo规则字段。 - 根据下表选择直接导入、转换或先修复原始链接。
| 返回内容 | 是否直接转换 | 下一步 |
|---|---|---|
完整YAML,能看到proxies、策略组或规则等顶层结构 | 通常不需要 | 先保存为UTF-8编码的.yaml文件,或直接在Clash客户端添加远程订阅 |
| 一长串Base64样式文本,没有明显YAML字段 | 通常需要 | 用支持该来源格式的转换程序输出Clash格式 |
以vmess://、ss://等开头的单节点或节点列表 | 通常需要 | 在转换程序中将目标格式设为clash |
| HTML、登录页、403、404、空响应或错误提示 | 不能直接转换 | 先检查原始订阅地址、权限、有效期和当前网络 |
关键判断:找到proxies:并不等于一定是完整配置。有些返回内容只是配置片段,仍可能缺少客户端需要的端口、策略组或规则。保存前应检查文件是否完整,并以当前客户端和内核的配置要求为准。Mihomo配置总览可参考官方配置文档。
最短可复制流程:用subconverter生成Clash YAML
下面只针对subconverter,不把它与其他转换项目混用。其官方README列出了Clash、V2Ray、SS等来源或目标格式,并给出了本地访问接口:http://127.0.0.1:25500/sub?target=%TARGET%&url=%URL%&config=%CONFIG%。其中target指定输出格式,url指定待转换订阅,config是可选的外部配置文件。查看subconverter官方README。
- 从subconverter的官方仓库或Release页面取得与当前系统匹配的程序,并按照该项目当前说明启动本地服务。本文不虚构安装命令、版本号或文件名,具体启动方式以当前Release说明为准。查看subconverter官方Release页面。
- 准备原始订阅地址。以下只是无效占位示例,不能实际使用:
https://example.invalid/subscribe?token=REDACTED。 - 将原始地址进行URL编码,然后在浏览器访问本地接口。结构示例为:
http://127.0.0.1:25500/sub?target=clash&url=ENCODED_SUBSCRIPTION_URL。ENCODED_SUBSCRIPTION_URL必须替换成编码后的真实地址,不能保留空格。 - 如果需要外部规则或策略模板,再按subconverter文档添加编码后的
config参数:http://127.0.0.1:25500/sub?target=clash&url=ENCODED_SUBSCRIPTION_URL&config=ENCODED_CONFIG_URL。没有明确需求时,先不要添加config,避免把模板问题误判成订阅问题。 - 浏览器打开转换结果后,确认页面内容是配置文本而不是HTML错误页。使用“另存为”保存为
clash.yaml或clash.yml,保存时选择纯文本并尽量使用UTF-8编码。
重要边界:/sub?target=clash&url=...是subconverter项目文档中的接口格式,不是所有转换服务的通用接口。其他工具可能使用不同端口、路径、参数或启动方式,不能直接照抄。
预期结果:本地得到一个可用文本编辑器打开的YAML文件,文件开头不是<html>,并且能够看到节点或配置结构。若只生成了节点列表,没有策略组和规则,不要把它当成完整分流配置;策略组和规则可能来自外部模板或后续手工配置。
本地配置文件和转换订阅链接,应该选哪个
转换接口返回的内容可以保存为本地YAML,也可以继续作为远程URL使用。两者解决的问题不同,先根据是否需要自动更新来选择。
| 方式 | 是否自动更新 | 优点 | 主要限制 |
|---|---|---|---|
| 直接导入原始订阅 | 通常取决于客户端的订阅功能 | 步骤最少,可能保留提供方原有配置 | 原始返回格式不一定兼容Clash |
| 保存为本地YAML | 不会自动更新 | 便于检查、备份、回滚和排错 | 节点变化后需要重新转换并下载 |
| 导入转换后的远程URL | 通常可以按客户端或服务设置更新 | 适合持续获取转换结果 | 依赖本地转换服务、原始订阅和网络可访问性 |
对第一次排错的用户,建议先保存一份本地YAML。这样可以确认“转换结果本身是否正确”,再判断是客户端导入、内核兼容还是网络连接问题。Clash Verge Rev官方文档将远程订阅和本地配置分开说明:远程配置可通过订阅链接导入,本地配置可通过新建配置文件或拖拽文件导入,具体菜单位置以当前版本界面为准。查看Clash Verge Rev配置导入文档。
- 打开Clash客户端的配置或Profiles页面,先保留原有可用配置。
- 选择本地文件导入,将
clash.yaml加入配置列表;如果使用远程方式,则粘贴转换后的远程URL。 - 选中新配置并启用,观察是否出现YAML解析失败、节点为空或策略组引用错误。
- 先选择一个节点进行实际连接测试,再测试浏览器或目标办公应用。
- 确认新配置异常时,删除新配置并恢复原来的备份文件。
转换失败时,按返回内容分层排查
| 现象 | 先判断哪一层 | 可执行处理 |
|---|---|---|
| 打开订阅后是登录页或HTML | 原始订阅返回内容 | 检查地址是否被重定向、需要登录、已失效或复制不完整;先让原始地址返回纯文本 |
| 返回403、401或超时 | 访问权限与网络 | 在本机单独测试原始订阅;确认订阅是否需要特定请求头,并按转换项目文档设置 |
| 转换结果为空 | 来源格式与原始响应 | 确认原始响应不是空文件,再检查来源格式是否属于subconverter支持范围 |
| 提示YAML解析失败 | 文件内容与编码 | 检查文件开头是否混入HTML或错误提示,重新以纯文本和UTF-8保存 |
| 配置能加载但没有节点 | 节点字段或过滤条件 | 检查proxies是否为空、是否使用了过滤模板,以及节点类型是否被当前内核支持 |
| 有节点但规则不生效 | 策略组和规则引用 | 检查proxy-groups中的名称是否与rules目标一致;Mihomo规则按从上到下匹配,上方规则优先。查看规则匹配说明 |
“文件能导入”只说明客户端完成了部分解析,不等于节点一定能连通,也不等于规则一定完整。Mihomo文档要求代理节点包含名称、类型等字段,具体字段还会随协议和内核能力变化。查看Mihomo代理字段要求。
复测标准:配置文件能被客户端加载;配置列表中能看到节点;启用后日志没有持续的解析错误;至少完成一次实际连接。每次只修改一个变量,失败后回滚到上一份配置,不要同时更换订阅、模板、客户端和网络。
安全注意:订阅链接本身就是敏感凭据
订阅地址通常包含用于获取节点或配置的令牌,因此不要公开粘贴完整URL,也不要把真实订阅放入截图、公开Issue或不明在线转换页面。本文示例中的地址均为无效占位值。
- 优先使用本机运行的转换程序,减少原始订阅交给第三方服务的范围。
- 如果必须使用远程转换服务,先确认服务的来源、隐私说明和访问方式,不要把工作账号或长期使用的订阅直接交给未知服务。
- 如果订阅地址已经公开,先联系订阅提供方确认是否支持撤销、重置或更换令牌;并非所有提供方都提供自助重置功能。
- 保存本地YAML时检查文件权限,避免把包含节点信息的配置上传到公开仓库或同步到不受控设备。
对于熟悉Mihomo配置的用户,也可以将节点来源与主配置分离,通过proxy-providers管理远程或本地来源;这属于进阶配置,不是把任意订阅自动转换为完整规则配置。是否可用仍取决于返回内容、字段和当前核心。查看Mihomo代理提供者文档。
常见问题
Clash订阅链接一定要转换成配置文件吗?
不一定。若返回的是完整且兼容的YAML,可以直接导入;若是Base64、单节点链接、HTML或错误页,则需要转换或先修复原始订阅。
怎么确认订阅返回的是Clash YAML?
在本机查看返回文本,搜索proxies、proxy-groups和rules等结构。只看到一段编码文本或节点链接,不能直接当作完整YAML。
subconverter的转换地址怎么写?
根据其官方接口,将target设为clash,将原始订阅URL进行编码后填入url参数;config是可选模板参数。该格式只适用于subconverter,不代表所有工具都相同。
转换后能打开但没有节点怎么办?
先单独打开原始订阅确认不是空响应或错误页,再检查来源格式、过滤条件和节点协议是否被当前内核支持。必要时先去掉外部模板,生成最小结果。
本地YAML和转换订阅链接有什么区别?
本地YAML便于检查、备份和回滚,但不会自动更新;转换订阅链接便于持续获取新结果,但依赖转换服务、原始订阅和网络访问。
订阅链接泄露后一定能重置吗?
不一定。先联系订阅提供方确认是否支持撤销、重置或更换令牌;如果支持,及时处理,否则应请求提供方更换订阅地址。