Shadowrocket 订阅更新失败或节点为空:五步自查清单

订阅添加后列表为空或提示解析失败时,依次核对链接完整性、复制格式、服务商侧状态、更新时机与网络环境,逐步缩小原因范围。

本文速览

这份清单适合已经持有自己订阅链接、却在 Shadowrocket(小火箭)中看不到条目的用户。先确认 URL 能否取回内容,再区分内容格式、服务商响应和本机网络问题;每一步都保留原始链接与观察到的结果,避免反复修改配置后无法判断是哪一步起了作用。

第一步:核对 Subscribe 链接是否完整

结论:先检查输入的 URL,再处理列表。进入 Home,找到自己添加的 Subscribe 项,打开其编辑内容,对照服务商提供的原始资料逐字检查。若尚未添加,可从 Home 右上角的「+」进入,选择 Type 为 Subscribe,再填入自己已有的链接并保存。不同界面状态下入口显示可能略有差异,以应用内实际字段为准。

订阅地址通常包含路径和查询参数。以示意地址 https://example.com/sub?token=xxxx 为例,?token=xxxx 属于 URL 的一部分;漏掉问号、等号或末尾字符,都可能使服务器返回不同内容。这个地址仅用于说明结构,不是可用订阅。请勿把自己的完整 URL 贴到公开讨论区:其中的参数可能用于识别访问权限。

  1. 找回原始地址

    从自己已有的服务商资料中重新复制完整 URL,保留开头的 https://、路径以及问号后的参数。不要凭记忆补写字符。

  2. 检查首尾字符

    对照 Subscribe 输入框,确认前后没有空格、换行或说明文字。复制网页上一整段说明时,标题和标点可能一并进入剪贴板。

  3. 只改一个变量

    保存更正后的地址,再执行一次更新并观察列表。若同时更换 URL、网络和配置,就无法判断是哪项改动产生了结果。

第二步:区分获取失败与内容无法解析

结论:URL 能打开,不等于它返回了 Shadowrocket 可读取的订阅内容。一次更新至少经过请求地址、接收响应、解析条目三个环节;列表为空只说明最终没有得到可显示的条目,不能单凭这一现象认定是哪一环出了问题。

读取 URL发出请求接收响应解析条目显示列表

先检查自己是否把网页地址、账户页面地址或一段说明文字误填进 Subscribe。复制链接时尤其留意引号、中文标点、断行和被截短的参数。在 Safari 中打开同一地址可辅助确认能否访问,但浏览器显示登录页、错误页或普通网页时,不能把“页面能打开”当作“订阅格式正确”的证据;也不要把页面显示的敏感内容转发给他人。

报错:Failed to load subscription

原因与解法:这类加载提示需要结合实际响应判断,可能是链接失效,也可能是当前网络无法取得内容。先核对原始 URL,再向自己的服务商确认该地址是否仍可访问;具体提示文字以应用当时显示为准。

现象:更新后列表仍为空

原因与解法:请求可能返回了非订阅内容,也可能返回了没有可显示条目的内容。确认没有填入账户网页地址,并让自己的服务商核对该链接实际输出的格式与内容。

若 URL 以 https:// 开头,HTTPS 通常使用端口 443,但服务商也可能指定其他端口;以原始地址为准,不要自行改写端口。可见的 401 或 403 响应通常指向访问权限问题,404 则表示该路径未找到;即使得到 200,也仍需确认响应确实是订阅内容,而非登录页。

第三步:核对服务商侧的链接与内容状态

结论:本机输入无误后,下一处核对点是提供该链接的一方。Shadowrocket 负责读取用户填入的资料,订阅地址的有效期、访问权限和返回内容则取决于该地址对应的服务。应用购买与已有服务资料是两件事;本文只说明如何检查用户自己的链接。

1 条 URL
先对照 Subscribe 中保存的完整地址
3 位状态码
可记录 401、403、404 等 HTTP 响应
443
HTTPS 常用端口;实际端口以原始 URL 为准

查看自己已有的服务商账户资料时,重点确认三件事:当前拿到的是供客户端读取的订阅 URL;该 URL 的访问权限仍有效;它返回的内容包含预期条目。若服务商更新了链接,应以其当前提供的地址替换旧地址,而不是只改 URL 中看起来像日期或随机码的片段。

与服务商沟通时,可提供发生问题的时间、是否能访问地址、观察到的状态码,以及“能取回内容但条目为空”或“请求直接失败”这类明确现象。不要发送完整 token、密码或配置明文。如果服务商确认返回为空,应先让其核对自己的资料;反复在 Home 刷新不会凭空生成条目。

判断:先确认返回内容,再调整应用设置

如果同一条 URL 返回的是登录页、错误页或空内容,应先处理地址和服务商侧状态;只有确认取回了预期订阅内容,才继续检查导入后的显示结果。

第四步:控制更新时机,观察一次明确结果

结论:修改 URL 后进行一次更新,并等待本次操作结束,再比较条目是否变化。连续快速触发更新会让“哪次请求对应哪次修改”变得不清楚,也不能代替对返回内容的核对。先记下修改前的现象,再保存链接、更新、记录修改后的现象。

不要把 Global Routing 的 Proxy、Direct、Config 或 Scene 与“订阅是否成功解析”混为一谈。这些是连接后的路由姿态;订阅列表为空时,优先查 URL 请求和返回内容。已有条目但访问结果不符合预期,才需要进一步核对路由与规则,例如 DOMAIN-SUFFIX、GEOIP、IP-CIDR 和 FINAL 的匹配结果。

第五步:换网络复核,再决定下一处检查点

结论:同一条已核对的 URL 在不同网络下表现不同,才有理由继续检查本机到订阅地址的连接。保持 Subscribe 内容不变,分别在自己可用的 Wi‑Fi 与蜂窝网络上尝试一次更新,记录能否取得内容及提示是否变化。切换网络前后不要同时改写地址,否则比较结果失去意义。

现象:一种网络可更新,另一种失败

原因与解法:两种连接到订阅地址的路径不同。确认失败网络本身可正常访问网页,再核对该网络是否能访问自己的订阅地址;向服务商反馈两种网络下的具体结果。

现象:两种网络都取得空列表

原因与解法:优先回到 URL 和响应内容检查。若两次使用的是同一条地址,单纯继续切换网络通常不能解释返回内容为何没有条目。

排查时也要区分“订阅更新失败”和“已有条目无法连接”。前者发生在读取资料阶段;后者需要进一步核对自己已有配置中的 Type、Address、Port,以及对应协议要求的字段。Shadowsocks、VMess、VLESS、Trojan、Hysteria2 与 WireGuard 的字段并不相同,不应为了修复空列表而随意更改已有条目的协议或端口。

如果 URL、响应内容和网络均已核对,仍无法在 Home 看到预期条目,可整理前述记录,再检查自己是否正在查看正确的 Subscribe 项,以及资料是否保存到了预期位置。需要区分 Config 与 Home 的用途时,可参阅服务器管理说明;对界面词含义不确定时,可查阅术语表。

结论:用差异定位问题

只有网络改变而 URL 不变时,结果差异才适合用来检查连接环境;只有 URL 改变而网络不变时,结果差异才适合用来检查链接。一次只改变一项,才能把下一步交给对应的核对环节。

核对应用与继续阅读

Shadowrocket 在 Apple 平台通过 App Store 获取。核对产品页时可查看开发者 Shadow Launch Technology Limited 与应用 ID 932747118;系统要求以 App Store 页面标注为准。已有自己的订阅资料后,再按教程核对导入步骤。

去正版核验页 看教程
App Store 正版核对