适用于已经在 Shadowrocket(小火箭)导入自己订阅的用户。先在 Home 手动更新一次,确认链接可以返回有效列表,再按需要启用 Settings → Subscribe 中的 Update on Open;只有某个订阅异常时,单独更新该分组。更新失败应区分请求未完成、服务端拒绝访问与返回内容无法解析,不要先删除仍可使用的记录。
订阅更新会改变什么
订阅保存的是列表来源。每次更新时,Shadowrocket 会请求该地址,读取返回内容,再更新对应分组中的服务器记录。服务端如果调整了服务器名称、地址、端口或连接参数,新的列表可能与旧列表不同。更新订阅不是给客户端升级,也不会自动延长用户已有服务的有效期。
Home 中的服务器订阅与 Config 中的规则配置是两类内容。刷新服务器订阅,不等于更新 Config,也不意味着 Global Routing 会自动切换。排查前先确认自己正在处理哪一类链接,避免把规则文件地址填进服务器订阅字段。
- 已有记录:来自订阅分组的记录应由该订阅维护;手动添加的独立记录并不因此获得同样的更新来源。
- 当前选择:更新后检查原先选中的服务器是否仍存在,不要只看总数量。
- 连接结果:列表成功刷新与服务器可连接是两项检查,后者需要单独验证。
- 默认设置:自动更新及请求路径相关开关,以当前应用显示为准,不预设全部开启或全部关闭。
手动下拉刷新:先验证一次完整更新
手动刷新适合首次导入后核对内容、收到自己服务商的变更通知后同步列表,以及自动更新结果不明确时复查。操作时保持 Shadowrocket 在前台,等待当前更新结束;连续下拉不会修复失效链接,反而可能触发服务端的请求频率限制。
-
确认分组
进入 Home,找到已导入的订阅分组。若尚未添加,使用右上角“+”,在 Type 选择 Subscribe,填入自己的完整订阅地址并保存。
-
下拉刷新
在 Home 列表向下拉动,触发订阅刷新。留意更新状态,等待请求与解析完成,不要立即离开应用。
-
检查列表
查看目标分组是否保留有效记录,核对预期变化的名称和数量。列表没有变化可能表示服务端内容未变,不能仅凭这一点认定失败。
-
验证连接
点选需要使用的服务器,确认 Home 中的选择标记,再使用 Connectivity Test 检查。若刷新成功而连接失败,转查该服务器参数与连接路径。
打开时自动更新:设置 Update on Open
在 Settings → Subscribe 中检查 Update on Open。启用后,应用会在相应的打开时机尝试更新订阅。它不是持续后台轮询,也不代表应用关闭后仍按固定分钟数请求;触发条件和界面细节以当前应用为准。
建议先完成一次成功的手动刷新,再启用此项。这样,下次打开应用时若出现异常,可以区分“自动触发没有达到预期”和“订阅本身已经无法更新”。应用打开时仍需要可用网络,自动更新不会绕过服务端认证、失效日期或请求限制。
- 设置位置:打开 Settings → Subscribe,检查 Update on Open 的实际状态;需要打开应用时同步列表,再将其启用。
- 验证方式:记录当前分组内容,在之后重新打开应用时观察更新提示与结果;服务端内容未变化时,列表保持原样是正常现象。
- 临时排错:若每次打开都会出现失败提示,可先关闭该项,使用单条更新定位问题;修复后再决定是否恢复。
- 作用边界:Settings → On Demand 管理按条件连接,不是订阅刷新计划。不要为了启用自动更新而改动 On Demand。
如果打开应用后网络尚未就绪,例如刚切换 Wi-Fi 或正在完成网络登录,更新请求可能先于网络恢复而失败。先完成网络连接,再回到 Home 手动刷新一次即可验证,不需要重新导入全部订阅。
按订阅逐条更新:缩小故障范围
多个订阅同时存在时,某个分组更新成功,不能证明其他分组也成功。逐条更新可以把问题限定到一个地址,避免将某个服务端的异常误判为整个应用无法联网。此操作以用户已有订阅为前提,本站不提供、不销售、不推荐节点或订阅。
- 在 Home 找到需要检查的订阅分组,先记下名称与当前记录数量,确认不是同名的另一个分组。
- 打开该订阅分组的操作菜单,使用 Update 更新这一条订阅;入口呈现以当前应用界面为准,注意不要选择删除操作。
- 等待结果,记录完整错误信息。若成功,查看该分组内容;若失败,保留原分组继续排查。
- 用相同网络再更新另一条已有订阅进行对照。只有一条失败时,优先核对该链接与服务端状态;多条均失败时,再检查共同网络路径。
更新失败:按错误与返回内容处理
失败可能发生在域名解析、建立连接、服务端响应或内容解析阶段。先记录发生时间、所在网络、目标分组,以及提示原文,再判断下一步。下面的英文是网络请求中可能出现的错误文本或 HTTP 状态,具体显示形式取决于应用与服务端,并不表示每次都会出现相同提示。
报错:The request timed out.
原因:请求未在允许时间内完成,可能涉及网络路径或服务端响应。解法:先确认当前网络可用,切换一次网络后单条重试,再根据现有连接条件检查 Update via Proxy。
报错:401 Unauthorized
原因:服务端未接受当前请求的身份凭据。解法:从自己的服务账户重新核对订阅地址,保留完整查询参数,并确认旧 token 是否已被重置。
报错:403 Forbidden
原因:服务端拒绝本次访问,可能与账户状态或访问限制有关。解法:向自己的服务商核对订阅权限与访问条件,不要仅凭此状态判定客户端设置错误。
报错:429 Too Many Requests
原因:请求触发服务端频率限制。解法:停止反复刷新,按服务端提示等待后再试;排查期间可暂时关闭 Update on Open,减少重复请求。
请求成功,但列表为空
HTTP 请求成功只说明收到了响应,不保证响应中包含有效服务器记录。链接可能返回账户登录页、错误说明页或空内容;复制时漏掉参数,也可能让服务器返回与预期不同的页面。不要把“能打开一个网页”直接当作订阅有效的证据。
- 核对地址是否确实为服务器订阅地址,而不是账户管理页或 Config 文件地址。
- 检查开头和结尾是否混入空格、换行、引号,尤其注意
?后的参数是否完整。 - 向自己的服务商确认当前返回格式是否适用于 Shadowrocket,以及是否实际包含可用记录。
- 如需提交响应内容协助排查,先移除订阅地址、token、密码等敏感信息,不公开粘贴完整订阅。
Update via Proxy:只在需要时调整请求路径
Settings → Subscribe 中的 Update via Proxy 用于控制订阅更新是否借助代理路径。它与 Update on Open 解决的问题不同:前者涉及更新请求怎么发送,后者涉及何时尝试更新。启用代理更新并不能修复错误的 token,也不能把登录页面转换成服务器列表。
- 直连更新正常:保留当前可用设置,不必为了更新订阅同时修改 Global Routing、DNS 与 Config。
- 当前网络无法访问订阅地址:先使用现有可用服务器建立连接,再尝试启用 Update via Proxy,并单独更新目标订阅。
- 尚无可用连接:单独打开 Update via Proxy 不会产生可用代理路径。需要先恢复已有连接条件,或在能够访问订阅地址的网络中更新。
- 修改后仍失败:记录前后错误是否变化。若始终是 401 或 403,应优先检查权限,而不是继续切换请求路径。
每次只调整一个变量。例如先保持订阅地址不变,仅切换网络重试;随后再检查代理更新设置。这样可以知道是哪一步影响了结果,也便于将设置恢复到原先可用的状态。
常见问题:更新频率与连接验证
打开自动更新后,还需要手动刷新吗?
正常使用时不必连续刷新。收到自己服务商的变更通知、打开应用时网络未就绪,或需要确认某个分组的状态时,可以在 Home 手动刷新一次,并等待结果。
更新成功,为什么服务器数量没有增加?
更新只是同步服务端当前内容,不保证增加数量。核对预期变更的记录名称、地址与端口;服务端没有变化时,数量不变是合理结果。
刷新后连不上,要重新添加订阅吗?
先在 Home 重新确认选中的服务器,并执行 Connectivity Test。若测试异常,检查该记录的连接参数与已有服务状态;若测试通过但目标访问异常,再检查 Global Routing 与 Config,不要立即删除订阅。
能不能每隔几秒自动刷新一次?
Update on Open 不是秒级定时任务。按实际需要更新即可;频繁请求可能触发 429。没有内容变更时,不需要靠反复刷新维持已经建立的连接。
购买 Shadowrocket 后就有订阅吗?
客户端买断 ≠ 线路套餐。Shadowrocket 是 Apple 平台的付费客户端,唯一获取入口为 App Store;用户已有服务的订阅需自行导入,购买客户端不会自动添加服务器列表。