Shadowrocket 訂閱更新失敗、節點清單空白?5 步自我檢查

依序檢查連結格式、複製是否完整、服務商狀態、更新時機與網路環境,逐步找出訂閱解析失敗的原因。

本文重點

適用於已從服務商取得訂閱連結,卻在 Shadowrocket(小火箭)中遇到更新失敗、匯入後沒有項目,或原有清單不再變動的情況。先保留現有設定,再依序完成五步檢查;釐清問題究竟出在連結、伺服器未回傳有效內容,還是內容已回傳但無法解析。不要一開始就刪除訂閱或更動所有網路設定。

先釐清:訂閱更新失敗與連線失敗

訂閱更新的用途是向伺服器取得項目清單,並將內容解析為用戶端可使用的記錄。清單已有項目但無法連線,屬於後續連線階段的問題;清單空白,也不能直接推斷所有伺服器都無法使用。延遲測試成功同樣無法證明訂閱網址可存取,因為測試目標與訂閱伺服器可能不是同一個位址。

讀取連結 解析網域 提出訂閱請求 解析內容 顯示項目

開始排查前,先在 Home 首頁記下目標訂閱的名稱、目前項目數量與本次提示。若仍有可用的舊項目,請先保留;備份含有憑證的設定時,只存放在自己能控管的位置。不要把「刪除後重新加入」當成第一步,以免失去前後比對所需的資訊。

觀察到的情況優先檢查目前無法據此判定
更新時出現錯誤,舊項目仍在訂閱請求與本次回應舊項目已全部失效
首次匯入後沒有項目連結用途、回應內容與格式必須更改連線協定
清單正常,但某個項目無法連線該項目的參數與外連網路訂閱一定沒有更新成功
更新後項目數量減少服務商實際回傳的項目與篩選條件減少的項目一定是被用戶端誤刪

第一步:確認取得的是訂閱連結,而非網頁網址

請向服務商取得訂閱連結。帳戶首頁、訂單頁面與說明頁面即使能在瀏覽器中開啟,也不代表它們是可匯入的訂閱網址;這些頁面通常回傳供人閱讀的 HTML,而不是項目資料。連結中出現「sub」字樣也不足以證明用途,仍須確認服務商提供的匯入說明。

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

以下網址僅用來示範結構,無法實際連線。https:// 是通訊協定部分,example.com 是主機名稱,/sub 是路徑,?token=xxxx 是查詢參數。實際網址的路徑與參數名稱可能完全不同,請勿照著範例把自己的連結改成相同格式。

  1. 返回服務商提供連結的位置,確認用途是用戶端訂閱,而非登入網頁。
  2. 區分單一伺服器分享連結與包含多個項目的訂閱網址;不能只憑「複製連結」這個動作,就把兩者視為相同。
  3. 若要重新確認新增位置,請從 Home 首頁點選新增入口,進入 Add Server 新增伺服器,確認 Type 類型為 Subscribe 訂閱,並核對 URL 網址欄位。
  4. 不要在 Config 設定頁面匯入來路不明的內容,以此取代訂閱檢查。規則設定與伺服器訂閱的用途不同。
5 步
連結、複製、服務狀態、更新時機、網路
443
HTTPS 未指定連接埠時的預設連接埠
80
HTTP 未指定連接埠時的預設連接埠

連接埠資訊用來了解請求的目的地,不是修改建議。若原始訂閱網址明確指定其他連接埠,請保留原值;訂閱網址的連接埠也不等於清單中每個伺服器的連線連接埠。

第二步:逐字確認複製內容完整

看似相同的連結,可能只差一個字元就會指向不同資源。常見問題包括複製到中文句號、只選取螢幕上顯示的部分、漏掉問號後的參數,或連同排版換行一起貼上。先核對完整字串再嘗試更新,比反覆點選重新整理更有助於找出問題。

重新複製時,優先使用來源頁面提供的完整複製功能,再到目標訂閱的 URL 網址欄位取代原值並儲存。只變更這一項,更新一次並記錄結果。不要同時重新命名群組、修改規則和切換協定,否則難以判斷是哪個操作改變了狀況。

第三步:確認服務商狀態與回傳內容

即使連結完整,更新仍失敗時,也應確認服務商端的狀態:帳戶是否有效、訂閱網址是否已重設、服務目前是否正在維護,以及該網址是否受到存取頻率或來源限制。買斷用戶端不等於購買線路方案;購買 Shadowrocket 本身無法讓失效的訂閱網址恢復有效。

若更新提示或可用的診斷記錄中包含 HTTP 狀態碼,可依下列標準含義分類。卡片中的英文是 HTTP 狀態描述,不代表每次更新都會顯示完全相同的提示;若沒有狀態碼,請勿自行猜測伺服器回傳了哪種錯誤。

HTTP 401 Unauthorized

原因與處理方式:請求未通過目標資源要求的身分驗證,可能是憑證缺漏或失效;請核對完整參數,並向自己的服務商確認目前網址是否仍有效。

HTTP 403 Forbidden

原因與處理方式:伺服器拒絕了這次存取,可能與權限或存取政策有關;請保留狀態碼與發生時間,請服務商確認拒絕原因,不要僅憑此判斷方案已到期。

HTTP 404 Not Found

原因與處理方式:請求路徑找不到對應資源;請檢查連結是否截斷、路徑是否變更,再核對服務商提供的目前訂閱網址。

HTTP 429 Too Many Requests

原因與處理方式:伺服器限制了請求頻率;請停止連續重新整理,依服務商說明或回應中的 Retry-After 等待後再試。

即使收到 HTTP 200,也只代表請求在 HTTP 層級取得成功回應,不能保證回應本文是有效的訂閱內容。登入頁、驗證頁、空白本文或格式不符的資料,都可能無法產生項目。若瀏覽器能顯示內容,最多只能證明該次瀏覽器請求有收到回應;瀏覽器的登入狀態、快取與用戶端的請求條件不一定相同。

結論:先確認回傳內容,再處理解析問題

連結正確但清單空白時,請向自己的服務商確認該網址是否回傳適用於 Shadowrocket 的非空訂閱內容;不要試圖透過更換規則設定來修復登入頁或空白回應。

第四步:掌握更新時機,只檢查目標訂閱

連續重新整理無法修復失效的憑證,反而可能觸發頻率限制。服務商剛重設連結、調整項目或恢復服務時,也應先確認變更已生效,再進行一次有記錄的更新。不要自行設定固定等待秒數來反覆重試;明確的等待時間應以服務商說明或伺服器回應為準。

  1. 記下更新前狀態:在 Home 首頁確認目標訂閱名稱,記錄項目數量,並確認是否只是群組收合。檢查目前的搜尋或篩選條件是否隱藏了項目。
  2. 更新目標訂閱:使用該訂閱的更新功能。若目前介面提供下拉重新整理,請留意實際涵蓋哪些訂閱,避免把其他群組的結果誤認為本群組的結果。
  3. 等候本次更新完成:請勿在請求尚未完成時反覆觸發;保留完成提示與發生時間。
  4. 確認結果:重新查看同一個群組。項目數量不變不代表更新失敗,服務商也可能回傳與先前相同的內容。
  5. 掌握判讀範圍:更新成功只代表訂閱取得與解析這個環節已完成,不代表每個項目都通過連線測試。

若只有自動更新未執行,手動更新卻能完成,請先檢查相關自動更新選項與觸發條件,再調查背景執行時機。不要把手動更新失敗與背景未觸發混在同一次測試中,也不要把調整自動更新間隔當成伺服器拒絕存取的解決方式。

第五步:以單一變因測試區分網路問題

同一個訂閱網址在不同網路下可能有不同結果。Wi-Fi 認證頁面、DNS 解析故障、連線至訂閱網域逾時,或 TLS 憑證問題,都可能讓請求在解析內容前就失敗。請先確認裝置能正常連上網路,再比對訂閱請求;不要一看到清單空白就直接修改伺服器協定。

對照測試記錄觀察結果下一步
保持網址不變,從 Wi-Fi 切換至行動網路只有 Wi-Fi 下更新失敗檢查 Wi-Fi 認證、DNS 與存取限制
在另一個網路上重試相同請求兩種網路都回傳相同的 401 或 403優先確認憑證與伺服器存取政策
確認系統日期與時間出現 TLS 憑證有效期限相關提示校正裝置時間;若仍失敗,請服務商確認憑證
檢查目前連線與自動連線條件中斷連線後立即重新連線在 Settings 設定中查看 On Demand 隨選連線條件

若要排除目前通道造成的影響,請先記錄原本狀態,再前往 Settings 設定 → On Demand 隨選連線檢查自動連線條件。暫時停用相關條件後進行測試,完成後再恢復。不要關閉 TLS 憑證驗證來掩蓋憑證錯誤;這會改變連線的安全界線,卻無法證明訂閱內容正確。

Global Routing 全域路由中的 Proxy 代理、Direct 直連、Config 設定與 Scene 情境,是流量處理方式的選擇,不是修復訂閱的按鈕。訂閱更新請求的實際路徑也可能受相關設定影響,不能只看目前選項就斷定流量如何外連。進行比對測試時,請記錄目前選項,不要同時修改 DNS、路由、訂閱 URL 與伺服器參數。

結論:保留一次可重現的失敗紀錄

同一個網址只在某一種網路下失敗,先檢查網路;不同網路都遭到相同的存取拒絕,先確認服務商端狀態;請求成功但沒有項目,先檢查回應內容。每次只變更一個條件。

完成五步仍未恢復:整理可提供的診斷記錄

聯絡自己的服務商時,提供可供確認的具體情況,比只寫「無法更新」更有效。不要公開傳送完整訂閱網址;可先提供已遮蔽敏感資訊的記錄,並依對方的安全支援流程確認帳戶。以下清單適用於首次匯入後清單空白,也適用於原本正常、後來更新失敗的情況。

只有在有效訂閱已恢復、項目也能正常顯示後,才開始排查個別連線問題。若要重新了解匯入流程,請參閱訂閱手冊;首次設定則可依照入門指南確認操作順序。

App Store 正版確認