已有自己的服務商與訂閱時,先在 Home 手動更新並確認結果,再前往 Settings → Subscribe 檢查開啟 App 時的更新選項。失敗時依序檢查連結、網路請求與回應格式;更新成功只表示訂閱內容已取得並解析,不代表每台伺服器都能連線,也不代表 Config 中的規則已更新。
訂閱更新的範圍:伺服器清單,不是 App 更新
Shadowrocket(小火箭)的訂閱更新,是使用已儲存的訂閱網址重新取得伺服器設定。服務商調整伺服器網址、連接埠或驗證資訊後,重新取得訂閱才能將相關變更載入本機。這項操作與 App Store 中的 App 更新不同,購買用戶端也不會自動取得連線服務。
Home、Config、Settings 各有不同用途:Home 用來查看伺服器與連線狀態,Config 用來管理設定檔,Settings 用來調整 App 設定。排查前先確認要更新的項目,避免把「伺服器清單更新成功」誤以為「規則檔已重新下載」。
訂閱內容也可能包含用量或有效期限資訊,但是否顯示取決於服務商回傳的資料。不能只憑有沒有用量數字判斷更新是否成功;應搭配更新回饋、群組項目及服務商公告的變更一併確認。
手動更新:從 Home 重新整理並檢查群組
首次新增訂閱,或懷疑自動更新沒有執行時,先手動重新整理一次。開始前記下目標訂閱名稱、目前選取的伺服器,以及服務商通知的預期變更;無須為了確認更新而先刪除原有群組。
-
確認訂閱
開啟 Home,找到自己的訂閱群組。若尚未新增,點選右上角「+」,在 Type 中選擇 Subscribe,輸入自己的訂閱 URL 後儲存。不要把網站登入網址當成訂閱網址。
-
確認網址
進入目標訂閱的編輯頁面,檢查 URL 是否完整,尤其是問號後的查詢參數。複製時不要包含說明文字、前後空格或換行;不要自行變更 token 的大小寫。
-
下拉重新整理
返回 Home,在清單中下拉以觸發訂閱更新,並等待這次請求完成。若有多個訂閱,請確認目標群組的結果,不要把其他群組更新成功當成全部更新成功。
-
確認變更
查看更新回饋與群組項目。若服務商明確公告新增某個名稱,請確認該項目是否出現;若沒有公告變更,清單維持原樣本身不能證明更新失敗。
-
測試連線
確認目前選取的項目仍可使用,再進行連線測試及實際瀏覽。訂閱中的某台伺服器失效,不代表訂閱網址無法更新;請分別記錄這兩項測試結果。
開啟時自動更新:Settings → Subscribe
手動更新正常後,再前往 Settings → Subscribe,找到開啟 App 時更新的選項 Update on Open 並啟用。英文介面的大小寫或本地化文字請以目前畫面為準;這裡要找的是「開啟 App 時更新訂閱」,不是 On Demand 的連線觸發條件。
這項設定可減少手動重新整理的次數,不代表 App 關閉後仍會按固定間隔持續擷取訂閱。將 App 切換至前景時,實際更新也會受到 App 本身的更新條件與目前網路狀態影響;不能只因切換畫面一次就認定更新已完成。
- 啟用前:先確認同一訂閱能在 Home 手動更新,否則自動觸發時仍會遇到相同問題。
- 啟用後:在網路可用時重新開啟 App,等待更新回饋,再確認目標訂閱;避免進入 Home 後立刻斷網。
- 網路需要驗證時:先完成目前 Wi-Fi 的網頁驗證,再重試。連上 Wi-Fi 不代表已取得網際網路存取權限。
- 需要立即生效時:服務商剛通知網址變更,可直接手動重新整理,不必等到下次開啟 App。
Settings → On Demand 管理的是依條件建立或中斷 VPN 連線,不是訂閱更新計時器。修改 On Demand 無法修復失效的訂閱 URL,也不能取代 Subscribe 中的更新設定。
更新原理:下載成功與解析成功是兩回事
一次訂閱更新至少會經過網址解析、網路請求、接收回應及解析內容等步驟。前面的步驟失敗,App 就無法取得完整內容;後面的步驟失敗,即使伺服器回傳網頁,也無法產生可用的伺服器項目。
| 可確認的結果 | 說明 | 下一步 |
|---|---|---|
| HTTP 200 | 伺服器回傳成功回應,但正文仍可能是登入頁或提示頁 | 確認回傳內容是適用於 Shadowrocket 的訂閱資料 |
| HTTP 401 / 403 | 請求未通過身分驗證或存取權限檢查 | 向自己的服務商確認 token、有效期限及存取限制 |
| HTTP 404 | 找不到請求路徑所對應的資源 | 重新複製目前有效的訂閱網址 |
| HTTP 429 | 伺服器限制了請求頻率 | 停止反覆重新整理,依伺服器要求等待後再試 |
| 請求逾時 | 未能在允許時間內完成請求,不代表連結已過期 | 檢查目前網路,並改用可用網路進行比對 |
結論:先確認回應,再調整本機設定
遇到權限或路徑相關的 HTTP 狀態時,優先確認訂閱網址與服務狀態;只有請求逾時、網域無法解析等網路問題,才先檢查網路路徑。不要同時修改 DNS、Global Routing 與訂閱 URL,否則無法判斷是哪項變更造成影響。
更新失敗:依錯誤訊息縮小檢查範圍
先記下錯誤文字與出現位置,再決定下一步。下列 HTTP 狀態是伺服器回應資訊,不一定會完整顯示在彈出訊息中;只有實際回饋包含相應狀態時,才採用對應的檢查方向。單獨出現「更新失敗」提示,不能據此判斷帳戶已到期。
錯誤:HTTP 401 / HTTP 403
原因:訂閱端點要求的身分憑證無效,或伺服器拒絕目前的存取。
解決方式:在自己的服務商帳戶中確認服務狀態與訂閱網址;若 token 已重設,請編輯原有訂閱並換成新網址,接著只重新整理一次。
錯誤:HTTP 404
原因:網址路徑已失效、複製不完整,或服務商已移轉訂閱端點。
解決方式:向自己的服務商重新複製完整訂閱 URL,確認路徑與查詢參數。網域可以開啟,不代表訂閱路徑有效。
錯誤:HTTP 429
原因:短時間內的請求次數超過伺服器允許的範圍。
解決方式:停止連續下拉重新整理;若伺服器有提供等待時間,請依照時間再試,同時確認是否因反覆開啟 App 而觸發額外請求。
錯誤:The request timed out.
原因:網路請求未能及時完成,可能與目前網路、訂閱伺服器或請求經過的連線路徑有關。
解決方式:先確認一般網頁可以瀏覽,再分別透過 Wi-Fi 與行動網路進行一次比對;每次只變更一項條件,並記錄結果。
若回饋指出內容無法解析,請優先檢查訂閱類型與回應正文。登入頁、餘額提示頁、網頁驗證頁即使能在瀏覽器中開啟,也不是伺服器清單。編碼文字也不一定是相容格式,仍須符合 App 支援的內容結構。
- 類型不符:確認匯入的是伺服器訂閱,而不是 Config 設定檔網址或帳戶管理頁面。
- 連結遭截斷:確認通訊 App 是否漏掉換行後的內容,尤其是包含多個查詢參數的 URL。
- 回應為空:向自己的服務商確認訂閱是否應回傳項目,不要先清空本機清單來「強制修復」。
- 憑證提示:確認裝置日期與時間,並向服務商回報 HTTPS 憑證問題;不要忽略憑證驗證來掩蓋異常。
更新成功,但清單沒有變化或仍無法連線
清單名稱沒有變化,常見原因有兩種:服務商沒有修改內容,或只更改項目的網址、連接埠及驗證資訊。名稱與數量只能作為可見線索,不能證明內容完整。應優先確認服務商明確公告的變更,不要為了看到「新內容」而反覆刪除再匯入。
更新完成後仍無法瀏覽,應改為排查連線問題。Home 中目前選取的伺服器可能已遭移除或失效;Global Routing 的 Proxy、Direct、Config、Scene 也會影響路由方式。這些設定無法修復訂閱 URL:尤其使用 Config 時,還須確認目前設定中的規則與最終策略。
- 確認群組:確認剛才更新的是目標訂閱,而不是其他名稱相同或相似的群組。
- 確認選取項目:重新確認目前的伺服器,並分別記錄連線測試與實際網頁瀏覽結果。
- 確認路由:檢查 Global Routing 目前的模式;使用 Config 時,確認啟用的是預期設定。
- 確認規則:檢查相關 DOMAIN-SUFFIX、IP-CIDR、GEOIP 與末尾 FINAL 的策略及順序。修改前先儲存現有設定,不要只為了更新訂閱而改寫規則。
伺服器訂閱更新與規則更新是兩條不同的操作流程。需要了解設定欄位時,可查看設定欄位說明;剛開始使用時,請先依照入門指南確認匯入、選取伺服器與首次連線的順序。
日常檢查:保留紀錄,一次只改一項
使用穩定時,可保留開啟時更新,並在服務商通知變更後再手動重新整理。發生異常時,記錄足以區分「網址錯誤」、「網路失敗」與「解析失敗」的資訊即可,無須公開完整訂閱內容。向自己的服務商回報時,請明確說明遇到的是更新問題還是連線問題。
- 記錄網路環境:使用 Wi-Fi 或行動網路、一般網頁是否可瀏覽,以及目前是否已連線。
- 記錄結果:錯誤原文、HTTP 狀態(若有顯示)、失敗時間,以及切換網路後是否再次發生。
- 保護資訊:遮蔽 token、密碼、完整訂閱 URL 與可識別帳戶的資訊。
- 保留設定:確認新網址能正常回傳內容前,避免刪除原有訂閱或重設所有設定。
Shadowrocket 是透過 App Store 取得的閉源商業 App,主要供 iPhone、iPad 使用。用戶端一次性購買與連線方案是兩回事;價格及系統需求請以 App Store 頁面標示為準。確認 App 時,請核對開發者 Shadow Launch Technology Limited、官方圖示與 App ID 932747118。