Shadowrocket 订阅更新教程:手动更新、打开时自动更新与更新失败排查

讲解在 Home 页手动更新订阅、开启打开时自动更新的位置与作用,以及更新失败时依次检查网络、链接和服务商侧状态。

本文速览

已有自己的服务商与订阅时,先在 Home 手动更新并确认结果,再决定是否开启打开时自动更新。本文以 iPhone / iPad 上的 Shadowrocket(小火箭)为操作示例,说明如何区分请求失败、解析失败与更新后连接失败;Mac、Windows、安卓、Linux 使用相同的排查思路,菜单位置以各平台实际界面为准。

一、订阅更新改动什么,哪些内容不会一起更新

订阅更新是重新请求已有的订阅 URL,再把响应中的服务器条目导入对应分组。服务商调整地址、端口或条目列表后,客户端需要重新获取才能反映这些变化。更新成功不等于每个条目都能连接,也不等于服务商账户已经续期。

读取订阅地址 请求远端内容 解析服务器条目 更新订阅分组 检查连接结果

Home 中的服务器订阅与 Config 中的规则配置是两类内容。更新服务器订阅,不应被理解为同时更新 Config 文件中的 DOMAIN-SUFFIX、GEOIP、IP-CIDR 或 FINAL 规则。排查时先确认问题发生在哪一层,避免为了刷新条目而反复更换规则配置。

Home
查看订阅分组与服务器条目
Config
管理规则配置文件
Settings
调整订阅更新相关选项

二、在 Home 手动更新订阅

第一次导入后、服务商通知条目变更后,或列表看起来长期没有变化时,可以先执行一次手动更新。操作前记住目标订阅分组的名称;如果存在多个订阅,更新后要核对相同分组,不能只看 Home 顶部当前选中的服务器名称。

  1. 打开 Home。确认页面中已经有订阅分组。单独手动添加的服务器不等于订阅,缺少订阅 URL 时,刷新不会凭空生成远端列表。
  2. 下拉页面并松手。触发订阅刷新后等待请求结束。不要在等待期间连续重复下拉,以免把多次请求的结果混在一起判断。
  3. 查看目标分组。核对是否仍有条目、名称是否变化,并留意是否出现错误提示。不同订阅可能分别成功或失败,一组有变化不代表所有组都已更新。
  4. 选择有效条目再测试连接。如原来选中的条目被移除,应从更新后的列表重新选择。先确认订阅获取结果,再检查实际访问,两个步骤分开进行。

列表数量没有变化,不能单独作为失败依据。远端可能只替换了地址或端口,也可能确实没有发布新内容。反过来,条目数量增加也只能说明获取到不同列表,不能代替连接测试。不要用删除全部订阅来验证刷新,否则会同时丢失排查所需的原始分组与地址线索。

三、开启打开时自动更新及其作用范围

iPhone / iPad 可在 Settings → Subscribe 中查找并开启 Update On Open。它用于打开应用时触发订阅更新,适合希望进入 Home 后获取较新列表的情况。界面措辞如有差异,应核对描述是否确实指向“打开应用时更新订阅”,不要误开其他功能。

  1. 先回到 Home 完成一次手动更新,确认链接本身可以使用。
  2. 进入 Settings → Subscribe → Update On Open,将该项开启。
  3. 下次重新打开应用时,等待订阅请求完成,再查看分组内容;不以列表是否立刻变动作为唯一判断依据。
  4. 如果每次打开都出现同一错误,先按下文修复网络或链接,不要通过反复切换开关代替排查。

打开时自动更新不是固定间隔的后台轮询,也不是服务商发布内容后的即时推送。应用一直留在后台、设备锁屏或系统限制后台活动时,不应据此推断订阅已刷新。需要确认当前内容时,仍可回到 Home 手动刷新一次。

设置或操作作用不能据此推断
Home 下拉刷新主动请求订阅内容所有服务器都已通过连接测试
Update On Open打开应用时触发订阅更新锁屏期间按固定周期更新
Settings → On Demand按设定条件触发 VPN 连接自动获取或修复订阅列表

结论:先验证手动刷新,再开启自动更新

手动刷新仍然失败时,先修复相同链接的获取路径;自动更新只改变触发时机,不会修正过期 token、错误响应或服务商账户状态。

四、更新失败时,按网络、链接、服务商侧依次检查

先区分“没有收到有效响应”和“收到内容但无法解析”。前者通常需要检查网络、域名解析和请求路径;后者需要检查 URL 是否正确,以及远端返回的是订阅内容还是登录页、错误页。只看“失败”两个字就更换协议,往往无法触及问题原因。

  1. 检查基础网络。确认 Wi-Fi 或蜂窝网络已经联网;遇到需要网页登录的网络,先完成认证。可切换另一种网络再刷新一次,每次只改变一个条件。
  2. 检查更新请求的路径。若订阅域名在当前直连网络下无法访问,而已有可用服务器能正常连接,可在 Settings → Subscribe 中检查 Update via Proxy,启用后连接可用服务器再重试。没有可用连接时,启用它并不能解决首次获取问题。
  3. 检查完整 URL。从自己的服务商账户页面重新复制订阅地址,核对协议、域名、路径和查询参数。不要把账户登录页、网页标题或说明文字一起粘贴。
  4. 检查服务商侧状态。在自己的账户中确认有效期、用量、订阅是否被重置,以及是否存在维护通知。重置过的 token 可能使旧链接失效,需要按服务商说明替换。
https://example.com/sub?token=xxxx

上方仅为结构示例,不是可用订阅。? 后的参数属于链接内容,不能因为看起来复杂就删掉;同时也不要自行添加参数或修改端口。订阅 URL 常包含访问凭据,提交截图或排查记录前,应遮住完整 token,不要公开原链接。

报错:The request timed out.

原因与解法:请求在等待期限内没有完成,可能涉及网络或远端响应;先换用已确认联网的网络重试,再检查是否需要通过已有可用连接更新,不要连续快速刷新。

报错:A server with the specified hostname could not be found.

原因与解法:请求使用的主机名无法完成解析;先核对订阅域名是否抄错,再切换网络验证,仍失败则向自己的服务商确认域名是否变更。

报错:Failed to load subscription

原因与解法:订阅没有成功加载,单凭该提示不能确定具体故障;先确认链接完整与账户有效,再检查是否返回登录页或错误页,并保留伴随出现的详细提示。

以上英文文本是可用于辨认问题类型的报错示例,实际提示可能因系统和失败环节不同而变化。若出现 HTTP 401 或 403,应优先核对授权、token 与访问限制;出现 429 时停止密集重试,按远端要求等待。这些状态码是排查线索,不应直接等同于“账户到期”。

五、更新成功但列表为空,或连接仍不可用

订阅请求成功只代表获取环节完成。远端可能返回空列表、格式不匹配的文本,甚至状态正常的网页内容。因此,若条目为空,要核对服务商提供的是否为适用于 Shadowrocket 的订阅地址;不要把网页能打开当作格式正确的证明。

协议名称也不能替代故障定位。订阅中的 Shadowsocks、VMess、VLESS、Trojan、Hysteria2 或 WireGuard 条目,需要与服务商给出的参数一致;不要为了让更新成功而随意改动协议、TLS 或传输选项。获取订阅失败发生在列表加载阶段,与某个条目连接失败不是同一个判断层级。

六、订阅更新常见问题与排查记录

每次打开都更新失败,要关掉自动更新吗?

可以先关闭 Settings → Subscribe → Update On Open,减少重复提示,再到 Home 手动刷新并记录错误。链接与网络恢复正常后,再开启该项;关闭它只是暂停触发,不是修复订阅。

刷新后名字和数量都没变,是不是没更新?

不一定。服务商可能没有修改列表,或只更换了条目内部参数。先看刷新是否报错,再核对自己的服务商是否确实发布了变更,不要靠反复删除重加来验证。

必须连接代理才能更新订阅吗?

不是。取决于订阅域名在当前网络中的可达性。先尝试正常刷新;仅在直连无法获取、且已有可用连接时,再检查 Update via Proxy。不要把该选项理解成所有订阅的必要条件。

服务商让换新链接,旧分组怎么处理?

先保存旧分组名称与必要记录,再按服务商提供的信息修改对应订阅 URL。完成一次手动更新,确认列表和连接正常后再清理重复分组,不要将新旧两条凭据公开比较。

仍无法定位时,整理最小排查记录:发生时间、使用 Wi-Fi 还是蜂窝网络、具体报错、手动更新是否失败、Update via Proxy 的状态,以及其他分组是否正常。向自己的服务商确认账户与订阅响应时提供这些信息,比只描述“更新不了”更容易缩小范围;记录中不要包含完整订阅凭据。

下载 Shadowrocket