Shadowrocket 订阅更新失败或节点为空的自查步骤

订阅解析失败或节点列表为空时,依次检查链接格式、服务商侧状态、更新时机与网络条件,并给出对应的处理方法。

本文速览

本文适用于已经从自己的服务商处获取订阅、但在 Shadowrocket 中无法更新或看不到节点的用户。先区分请求失败、返回内容不可解析与列表显示问题,再逐项检查链接、账户状态和更新路径;保留仍能使用的记录,每次只改变一个条件,最后用更新结果与连接测试分别确认恢复情况。

一、先分清更新失败、解析失败与列表为空

Shadowrocket(小火箭)的订阅更新不是一次连接测试。应用需要先访问订阅地址,取得响应,再把其中支持的服务器记录解析到 Home。任何一步未完成,都可能表现为“没有新节点”,但处理位置不同。

读取地址 请求订阅 接收响应 解析记录 显示列表

先回到 Home,展开对应订阅分组,清除搜索条件,再确认是否只是分组收起或筛选隐藏。Config 主要管理配置文件;更新 Config 中的远程配置,不等于已经更新 Home 中的服务器订阅。Settings 则用于检查更新行为等设置。

观察到的现象优先检查暂时不要做
更新等待后提示超时当前网络、域名解析、订阅请求路径反复修改服务器端口或密码
很快失败,出现 HTTP 状态码链接权限、服务商账户与接口限制连续触发更新
请求完成但没有可用记录返回内容、订阅格式、可见分组先删除仍能连接的旧记录
节点存在但连接失败服务器参数与实际连通性把连接故障直接当作解析故障

二、核对订阅地址,避免把网页当作订阅

订阅地址应从你的服务商处获取。账户登录页、套餐说明页、单个服务器分享链接与订阅地址不是同一种内容。即使地址可以在浏览器中打开,也可能只返回登录表单或验证页面,不能据此认定它能被订阅解析器读取。

  1. 在服务商账户中重新复制适用于 Shadowrocket 的订阅地址,不从聊天截图或换行后的文字手工拼接。
  2. 核对开头的 https://、完整路径和查询参数,移除地址前后的空格、引号与换行,不修改地址内部字符。
  3. 保留 ?、&、= 以及原有百分号编码。不要把整个查询参数删除,也不要自行重复编码。
  4. 编辑 Home 中已有的对应订阅记录,核对地址后执行该订阅的更新操作,避免导入多个同名分组而看错结果。

例如,下列内容只用于辨认“路径加查询参数”的结构,是不能用于连接的假值。实际地址可能使用不同参数名;不能把示例中的 token 当作所有服务商都必须采用的字段。

https://example.com/sub?token=xxxx

三、按响应结果检查服务商侧状态

链接完整仍不代表服务商会返回有效记录。账户到期、配额用尽、访问凭据失效、接口维护或请求过密,都可能影响响应。先登录自己的服务商账户核对状态,再判断是否需要改动应用设置。

下面的英文是标准 HTTP 响应状态文本,不保证 Shadowrocket 会逐字展示;有时应用只显示状态码或更简短的失败提示。只有实际看到对应状态时,才按该项处理,不能用“列表为空”反推一定发生了某个错误。

HTTP 401 Unauthorized

原因:请求未通过身份验证,可能是订阅凭据失效或缺少所需授权。

解法:从服务商账户重新获取有效订阅地址,完整替换旧地址后再更新。

HTTP 403 Forbidden

原因:服务器拒绝该请求,可能涉及账户权限、访问策略或验证拦截。

解法:核对账户状态,并向服务商确认该订阅接口是否允许当前请求;不要仅靠反复刷新尝试解除限制。

HTTP 429 Too Many Requests

原因:请求频率超过接口允许范围。

解法:停止连续更新,按服务商给出的间隔重试;若响应提供 Retry-After,应遵守其等待要求。

即使响应是 200 OK,正文也可能是 HTML 错误页、空内容或应用不能识别的格式。让服务商确认返回的是适用于 Shadowrocket 的订阅内容,而不是只确认“网址能访问”。不要把完整响应公开发送,其中可能包含服务器凭据。

结论:先确认响应内容,再调整连接设置

如果服务商确认接口返回的是登录页或空记录,先修复账户与订阅地址;切换 Global Routing 不会把这类响应变成有效服务器列表。

四、用单变量方法检查网络与更新路径

订阅请求能否完成,与已有节点能否连接是两项独立结果。若本地网络无法访问订阅域名,而旧节点仍可用,可以检查 Settings → Subscribe → Update via Proxy,通过可用代理尝试更新。开启该选项不能修复失效凭据,也不能凭空提供可用连接。

443
HTTPS 未显式指定端口时使用的默认端口
2 条
分别验证直接请求与可用代理请求路径
1 项
每轮只改变一个设置或网络条件
  1. 记录当前 Wi-Fi 或蜂窝网络、连接开关状态,以及 Update via Proxy 是否启用,保留原设置便于恢复。
  2. 在可信且允许访问订阅地址的网络下,先测试直接更新。若需切换 Wi-Fi 与蜂窝网络,先确认应用有相应网络访问权限。
  3. 只有仍有可用旧节点时,再测试代理更新:先确认旧节点能正常访问网络,再启用 Update via Proxy,回到 Home 更新对应订阅。
  4. 记录本轮的完成时间、提示与节点数量变化。若没有改善,恢复该项设置,再检查下一项,不同时更换 DNS、节点与订阅地址。

Global Routing 中的 Proxy、Direct、Config、Scene 用于不同的路由选择;它们不是订阅格式选项。排查时还应单独核对 Update via Proxy,而不是只看 Global Routing 的名称。需要代理更新却没有任何可用节点时,应先向服务商确认可直接访问的订阅入口。

如果断开后连接自动恢复,检查 Settings → On Demand 是否正在按条件触发连接。记录原值后再做对照测试,测试完成恢复所需设置。不要忽略这种自动连接行为,否则两次看似相同的更新可能实际走了不同网络路径。

五、更新完成却为空,检查内容与导入对象

节点列表为空不一定是网络故障。服务器列表订阅与包含规则的远程配置用途不同;如果拿到的是配置文件地址,应按配置文件的使用方式在 Config 管理,不能因为它也使用 HTTPS 就认定它是 Home 所需的服务器订阅。

Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 是连接协议名称,不是可以互换的订阅格式标签。不要为了让列表出现而把某个服务器的 Type 随意改为另一协议;服务器端配置与客户端参数必须匹配。

结论:列表恢复与连接恢复分开验收

先确认 Home 中出现了有效记录,再选择节点做连接验证;如果记录已经存在但访问失败,保留订阅排查结果,转查该节点参数与路由,避免重复替换正常的订阅地址。

六、更新时机与常见后续问题

更新适合在服务商通知地址变更、账户状态恢复或确认服务器列表调整后执行。出现失败时不要连续下拉刷新;先记录一次结果并完成对应检查,避免频率限制叠加到原问题上。订阅更新也不负责恢复 App Store 购买或续期服务商套餐。

为什么旧节点还能用,订阅却更新不了?

旧节点使用已经保存的连接参数,更新访问的是订阅接口。保留旧记录,先核对接口地址与账户权限;若仅直接请求超时,再用已验证可用的旧节点测试 Update via Proxy。

浏览器能打开地址,为什么应用仍然解析失败?

浏览器可能携带登录状态,或只展示了验证页面。让服务商确认该地址无需网页交互即可返回适用的订阅记录,不要把浏览器“打开成功”当成格式正确的证明。

换成蜂窝网络就能更新,应该改哪里?

先保留成功结果,回到原 Wi-Fi 核对是否需要网页认证、是否存在访问限制或域名解析异常。一次只测试一个条件;不要通过关闭证书验证来绕过 HTTPS 错误。

向服务商反馈时需要提供什么?

提供发生时间与时区、Wi-Fi 或蜂窝网络、是否使用代理更新、实际错误文本,以及是否仍有旧节点可用。截图遮住完整订阅地址、token、密码与服务器凭据。

最后复查三项:对应分组有记录、手动更新能完成、选定节点可以正常访问目标服务。前两项正常而第三项失败时,转到使用说明检查连接与 Global Routing;不要仅因单个网站打不开就认定整份订阅失效。

App Store 正版核验