本文適合已持有自家服務商訂閱連結的使用者。先在 Home 手動更新目標訂閱,再前往 Settings → Subscribe 檢查開啟 App 時自動更新的選項;若更新失敗,可依序從連結、網路及回傳內容著手排查。更新完成後,還需另外確認伺服器連線狀態,不能將「訂閱更新成功」視為「連線已可使用」。
訂閱更新會變更哪些內容
Shadowrocket(小火箭)的訂閱更新,是重新連線至已儲存的訂閱 URL,並解析回傳的伺服器設定。這不會更新 App 本身,也不等同於重新整理 Config 中的規則檔案。本文僅說明如何管理使用者已有的訂閱,不提供、銷售或推薦訂閱及相關服務。
更新可能新增伺服器、移除舊項目,或變更位址、連接埠與連線參數。手動修改訂閱項目後,下次更新可能會重新載入遠端參數,因此重要設定請先記錄。若原本選取的項目遭到移除,也要重新檢查 Home 中的選取狀態,不能只看項目總數。
結論:先確認更新對象
若要更新伺服器清單,請操作 Home 中的訂閱;若要修改 DOMAIN-SUFFIX、GEOIP、IP-CIDR 或 FINAL 的比對行為,則應檢查 Config 中目前使用的設定。不要反覆更新伺服器訂閱,試圖修正規則順序。
在 Home 手動更新訂閱
首次匯入後、服務端通知設定已調整,或自動更新結果不明確時,請先手動更新一次,確認目標明確。若有多個訂閱,請分別操作並記錄結果,避免將其他訂閱的成功提示誤認為目前訂閱已恢復。
-
確認群組
開啟 Home,找到需要更新的訂閱群組。先核對備註與所屬項目,確認這是已匯入的訂閱,而不是單獨手動新增的伺服器。
-
確認連結
查看該訂閱的編輯資訊,確認 URL 完整無誤。若要重新新增,請前往 Home → + → Type → Subscribe,輸入自己的訂閱 URL 後儲存。排查問題時,優先保留原有記錄,不要一開始就刪除。
-
執行更新
在 Home 將訂閱群組標題列向左滑動,選擇 Update。請注意要操作訂閱列,而非群組中的個別伺服器列;兩者的操作對象不同。等待此次請求完成,不要連續觸發更新。
-
檢查結果
查看是否出現失敗提示,並確認群組中預期的位址、連接埠或項目是否變更。清單沒有變化不一定代表失敗:若遠端回傳的內容相同,更新後也可能維持原樣。
-
驗證連線
在 Home 重新確認選取的伺服器,再執行 Connectivity Test。若要實際測試連線,請確認連線開關已開啟,且已取得系統 VPN 授權;訂閱請求完成本身不代表資料連線已建立。
如何設定開啟 App 時自動更新
前往 Settings → Subscribe,找到控制開啟 App 時更新訂閱的選項 Update on Open,依需求開啟。介面上的大小寫與排列方式以目前安裝的版本為準。開啟後,請返回 Home,觀察下次開啟 App 時的結果,而非只根據開關位置判斷更新是否已執行。
開啟時更新是一種觸發條件,不是固定間隔執行的背景工作。它不保證 App 未開啟時持續更新,也不保證每次在前景與背景間切換時都會立即完成請求。網路連線正常、連結有效且回傳內容可解析,仍是更新成功的必要條件。
- 先確認目前狀態:在自己的裝置上確認選項是否已開啟,不要根據其他裝置的狀態推測預設值。
- 先手動測試:確認手動 Update 成功後,再檢查自動觸發,避免同時排查多個變因。
- 預留等待時間:開啟 App 後,請等待請求完成;剛進入 Home 時看到的清單,可能仍是先前儲存的內容。
- 區分自動連線:Settings → On Demand 用來依條件建立 VPN 連線,不是訂閱更新排程。排查自動更新時,請勿先修改 On Demand。
若開啟後仍不確定是否有更新,請先向自己的服務商確認遠端確實有可辨識的設定變更,再對照 Home。項目數量相同,不足以證明自動更新沒有執行;同樣地,數量增加也不代表每個項目都能連線。
更新逾時:先檢查請求的連線路徑
訂閱 URL 是否可連線,與清單中的伺服器是否可連線,是兩回事。透過直接連線可能無法存取訂閱網域,但既有連線可能可以;反過來說,目前選取的伺服器若已失效,經由代理發出的訂閱請求也可能失敗。
| 檢查項目 | 操作位置 | 判斷方式 |
|---|---|---|
| 目前網路 | 裝置的 Wi-Fi 或行動網路設定 | 只切換網路,再更新同一個訂閱;若結果不同,表示需要繼續檢查網路路徑。 |
| 既有連線 | Home → Connectivity Test | 先確認目前伺服器可用;若連線已失效,就不能依賴它取得替代設定。 |
| 透過代理更新 | Settings → Subscribe → Update via Proxy | 既有連線可用但直接請求失敗時,可開啟此選項後重試並比較結果。 |
| 路由模式 | Home → Global Routing | 記錄目前使用的是 Config、Proxy、Direct 還是 Scene,避免同時變更路由模式與更新設定。 |
Update via Proxy 不是通用的修復開關。啟用前,應先選取可用伺服器並建立連線;若目前只能直接連線至訂閱網址,則應測試關閉該選項後的結果。Global Routing 中的 Proxy 表示代理模式,Direct 表示直接連線,Config 依設定檔處理,Scene 則依指定的情境運作;這些選項都不等於「已開啟自動更新」。
建議每次只變更一個項目:記錄原始值、手動更新一次並保留結果,再進行下一步。不要同時切換網路、伺服器與多個開關,否則即使更新恢復,也無法判斷真正生效的條件。
依錯誤訊息判斷失敗原因
以下列出網路層或 HTTP 回應中可能出現的錯誤原文。實際提示的語言與顯示方式可能不同,請記錄裝置上顯示的完整訊息,不必要求每次都出現相同文字。只看到「更新失敗」,無法判斷是連結失效還是連線中斷。
錯誤:The request timed out.
原因與解法:請求未能在等待期限內完成,可能與網路、DNS 或遠端回應有關。先切換 Wi-Fi 與行動網路後重試;若已有可用連線,再比較 Settings → Subscribe → Update via Proxy 開啟前後的結果。逾時本身不代表訂閱已過期。
錯誤:A server with the specified hostname could not be found.
原因與解法:無法解析訂閱網域。確認 URL 中的主機名稱完整,且沒有空格或多餘標點,再更換網路測試;若仍然失敗,請向自己的服務商確認該網域是否仍在使用。
錯誤:HTTP 401 Unauthorized
原因與解法:伺服器要求有效授權。確認複製的是目前完整的訂閱 URL,而非登入頁面網址;若授權參數已重設,請從自己的帳戶頁面重新取得連結,並更新已儲存的值。
錯誤:HTTP 403 Forbidden
原因與解法:伺服器拒絕此次請求,可能與授權、存取限制或帳戶狀態有關。先確認連結完整,再向自己的服務商提供狀態碼與發生條件;不要只憑 403 就認定必須更換協定。
錯誤:HTTP 404 Not Found
原因與解法:請求路徑中沒有對應資源。檢查路徑是否遭截斷或遺漏查詢參數,並確認訂閱入口是否已變更;反覆更新同一個錯誤連結,通常不會改變結果。
若出現憑證相關錯誤,請檢查裝置日期與時間、訂閱網域,以及目前網路是否有登入攔截,再請自己的服務商檢查憑證。不要透過忽略安全性檢查來掩蓋原因。若公共網路要求登入,請先在系統中完成網路登入,再返回 App 重試。
連結可以開啟,為什麼仍無法解析?
HTTP 請求成功,不代表回傳內容就是可用的訂閱。伺服器可能回傳帳戶登入頁、到期提示頁或網路驗證頁;即使這些頁面可以正常顯示,也不是 Shadowrocket 可匯入的伺服器清單。
以下網址僅供說明結構,並非可用訂閱。實際連結中的查詢參數是憑證的一部分,複製時必須完整保留,也不應傳送至公開群組或不明的轉換頁面。
https://example.com/sub?token=xxxx
- 複製正確內容:使用自己帳戶中的訂閱網址,不要複製帳戶中心網址,也不要把 QR Code 圖片網址當成訂閱內容。
- 保留完整參數:保留問號後的參數及其中的
&等分隔符號;聊天軟體自動換行或手動刪改,都可能導致授權失效。 - 確認內容類型:若回傳的是 HTML 登入頁、提示頁或空白回應,應先處理存取權限或帳戶狀態;切換 Global Routing 無法將頁面轉換成訂閱。
- 確認格式相容:向自己的服務商確認輸出內容是 Shadowrocket 可辨識的訂閱格式,而非其他設定檔結構或獨立規則檔案。
- 單一項目失敗:若只有部分項目缺失,請檢查相關協定欄位是否完整。Shadowsocks、VMess、VLESS、Trojan、Hysteria2 與 WireGuard 的參數要求各不相同,不要任意修改 Type 來取代修復原始設定。
更新後驗證與常見問題
完成更新後,依序確認群組、選取的伺服器、Connectivity Test 與實際存取情況。若存取結果與規則有關,請回到 Config 檢查;若伺服器驗證或傳輸失敗,則請核對該項目的參數。將這些層面分開檢查,可避免把連線問題誤判為訂閱問題。
訂閱顯示成功,為什麼伺服器數量沒有變?
遠端可能只修改位址、連接埠或驗證參數,也可能完全沒有變更。請比對自己預期會變更的項目,而非只比較數量;若仍有疑問,請向自己的服務商確認該 URL 目前回傳的內容。
開啟自動更新後,還需要手動更新嗎?
排查問題時需要。先在 Home 對目標訂閱執行 Update,確認連結與網路運作正常,再返回 Settings → Subscribe 檢查 Update on Open。如此可區分請求失敗與自動觸發條件未達成。
更新後原本選取的伺服器不見了,怎麼辦?
先確認是否仍在正確的訂閱群組中,再從此次更新後保留的項目中重新選取伺服器,並執行 Connectivity Test。不要假設遠端刪除或重新命名項目後,原本的選取狀態仍然有效。
需要傳送完整訂閱連結給別人排查嗎?
通常只要提供錯誤原文、網路類型、手動更新結果,以及 Update via Proxy 的狀態即可。請隱藏 URL 路徑中的憑證、查詢參數、密碼與帳戶資訊;若完整連結已外洩,請在自己的帳戶中重設後重新儲存。
若要繼續檢查連線設定,可參閱設定手冊。Shadowrocket 是 Apple 平台上的閉源商業 App,主要供 iPhone、iPad 使用,唯一取得管道是 App Store。一次買斷客戶端不等於購買線路方案;價格、系統需求與購買適用性,請以 App Store 頁面標示為準。