本文適用於已持有自己服務商訂閱的 Shadowrocket 使用者。先區分請求失敗、內容無法解析及有效項目為空,再檢查完整連結、訂閱效期與更新網路;最後確認 Home 的顯示狀態並保留排查紀錄。全程先保留原有設定,不要一開始就刪除所有伺服器或重新安裝 App。
一、先釐清:沒有取得內容,還是內容中沒有伺服器
Shadowrocket(小火箭)的訂閱更新包含數個步驟。App 會先向訂閱網址發出請求,再讀取回應內容,最後將可辨識的伺服器項目顯示在 Home。出現「解析失敗」不一定代表協定設定有誤,列表空白也不一定表示網路連線中斷。先找出問題發生在哪個步驟,才能避免反覆修改不相關的設定。
- 請求未完成:等待後逾時,或出現 DNS、TLS、連線失敗訊息。請先檢查更新時使用的網路與連線路徑。
- 請求完成但無法解析:伺服器可能回傳登入頁面、帳戶通知或錯誤文字,而非訂閱本文。請先確認網址用途與服務商提供的回應格式。
- 更新後沒有項目:可能是回應內容原本就是空的、內容不含可辨識的項目,或 Home 中的訂閱群組尚未展開。請先確認顯示狀態,再向服務商確認內容。
更新失敗後,先前儲存的伺服器仍可能留在列表中。因此,「還看得到舊項目」不代表更新成功;「舊項目仍可連線」也無法證明目前的訂閱網址有效。請分開記錄本次更新結果與舊項目的連線結果。
二、檢查完整連結:別把帳戶頁面當成訂閱網址
請從自己的服務商帳戶頁面重新複製供 Shadowrocket 使用的訂閱網址,再與 Home 中對應訂閱的網址核對。不要直接複製瀏覽器網址列中的帳戶首頁,也不要把單一伺服器分享內容當成整份訂閱網址。訂閱網址通常包含存取憑證,檢查時請只在自己的裝置上操作。
- 檢查開頭:確認複製的是完整網址,包含服務商指定的通訊協定部分,例如
https://,而不只是網域與路徑。 - 檢查結尾:確認查詢參數沒有被通訊軟體截斷。特別留意
?、&、=後方的內容,不要憑印象自行補上。 - 檢查多餘字元:移除複製時混入的外層引號、中文標點、空格或換行;不要任意變更網址中的大小寫或編碼字元。
- 檢查入口用途:使用服務商標示適用於 Shadowrocket 的訂閱入口,而不是登入網址、帳單頁面或設定說明頁面。
- 儲存後只更新一次:返回 Home,執行該訂閱的更新操作,等這次請求完成後再檢查結果。
https://example.com/sub?token=xxxx
以上僅用來說明網址結構,不能直接用於匯入。範例中的 token=xxxx 代表存取憑證;實際網址中的憑證不能用範例取代。也不要將整段原始網址重複編碼,或為了讓網址「看起來正確」而刪除查詢參數。
三、依回應結果檢查有效性與內容格式
即使網址完整,也可能收到錯誤內容。服務到期、存取憑證遭重設、伺服器維護或格式調整,都可能導致原本可用的網址不再回傳預期的訂閱內容。瀏覽器能開啟頁面,只能表示已收到回應,不能證明 Shadowrocket 能解析該內容。
以下是 HTTP 標準狀態說明,可用來辨識伺服器回應;不代表 Shadowrocket 一定會逐字顯示這些錯誤。請以 App 的實際提示及服務商可確認的回應為準。不要為了查詢狀態碼,把含有憑證的連結提交給第三方檢測網站。
HTTP 401 Unauthorized
原因與處理方式:伺服器要求有效的身分憑證,原有憑證可能已失效——請在自己的服務商帳戶中確認訂閱狀態,重新複製有效網址後再更新。
HTTP 403 Forbidden
原因與處理方式:伺服器拒絕目前的請求,可能與帳戶權限或存取限制有關——請洽服務商確認限制原因,不要只靠反覆更換伺服器嘗試。
HTTP 404 Not Found
原因與處理方式:請求路徑不存在,可能是連結遭截斷或入口已變更——請從服務商目前的帳戶頁面重新複製訂閱網址,並核對路徑與參數。
HTTP 429 Too Many Requests
原因與處理方式:短時間內請求過多而觸發限制——請停止連續重新整理,依伺服器提示或服務商說明稍候再試。
即使回應為 HTTP 200,本文仍可能是登入頁面或提示文字。若服務商確認已收到回應,請進一步確認提供的內容是否為 Shadowrocket 可辨識的訂閱,而非僅供瀏覽器閱讀的頁面。不要只憑副檔名、檔案大小或「請求成功」這幾個字判斷格式是否相容。
重點:收到回應後,還要確認回應內容為何
網址完整且請求成功,但仍無法產生伺服器項目時,請把排查重點轉向訂閱本文與帳戶狀態;此時修改 Config 中的分流規則,通常無法修正內容格式。
四、一次只變更一項網路條件,再測試更新
更新訂閱是向訂閱伺服器發出的請求,與瀏覽某個網頁的結果並不完全相同。某個網頁能開啟,不代表訂閱網域也能連線;目前的代理可以連線,也不代表透過它請求訂閱一定會成功。請先保持網址不變,再分別測試更新路徑,才能找出造成影響的條件。
- 記錄基準狀態:記下目前使用 Wi-Fi 或行動網路、連線開關狀態,以及這次更新的提示。先不要同時變更規則、DNS 與訂閱網址。
- 切換網路:條件允許時,從 Wi-Fi 切換至行動網路,或反向切換,接著只更新同一份訂閱一次。若公共網路要求登入網頁,請先完成網路驗證。
- 檢查更新路徑:前往
Settings → Subscribe,確認Update via Proxy設定。若目前介面提供此選項,啟用前請先確認已有可用的代理連線;如需比較,請記下原始設定值,測試後再還原。 - 避免循環依賴:若唯一的伺服器已無法使用,就不要期待透過它更新取得新的伺服器。請先測試能否直接連線至訂閱網址,或向自己的服務商確認可存取的訂閱入口。
- 處理時間與憑證問題:若出現 TLS 或憑證提示,請檢查裝置日期與時間是否正確,並請服務商檢查憑證。不要把關閉憑證驗證當成通用修復方式。
Global Routing 中的 Config、Proxy、Direct 是流量處理方式,並非訂閱格式選項。Scene 涉及情境設定,也無法將錯誤的訂閱本文轉換成伺服器列表。排查時不要把切換這些選項當成修復解析問題的方法;訂閱更新所使用的連線路徑,應另外確認相關設定。
五、更新後列表仍空白:檢查 Home 顯示狀態與實際項目
返回 Home,先清除目前套用的搜尋條件,並展開目標訂閱群組。確認檢視的是剛才更新的訂閱,而不是同名的其他群組或手動新增的項目。群組名稱仍存在,只能表示訂閱紀錄仍有儲存,不能證明底下已有有效伺服器。
- 展開後有項目:解析已有結果,接下來才檢查伺服器能否連線。若連線失敗,請另外確認伺服器網址、連接埠、驗證資訊與服務狀態。
- 展開後仍是空白:確認服務商是否確實回傳伺服器,以及回傳項目的格式是否適用於 Shadowrocket。帳戶有效,不代表目前的回應一定包含項目。
- 只有部分項目缺漏:向服務商說明缺少的項目名稱或協定類型,請對方檢查該部分的格式;不要直接把局部缺漏判定為整個網路無法使用。
Shadowsocks、VMess、VLESS、Trojan 等協定名稱描述的是伺服器連線方式,無法說明外層訂閱採用何種格式。同一協定的參數表示方式也可能不同,請服務商提供相容的內容,不要自行批次修改欄位名稱。也不要將訂閱網址的 HTTPS 連接埠直接填入伺服器的 Port。
六、保留已遮蔽敏感資訊的紀錄,依結果繼續處理
完成以上檢查仍無法恢復時,向自己的服務商提供可重現問題的紀錄,比只說「全部都試過了」更有幫助。紀錄應包含問題發生的步驟、網路環境是否變更,以及更新前後是否有項目。請勿傳送完整 token、密碼、私鑰或未遮蔽的 QR Code。
- 記下問題發生的當地時間、使用 Wi-Fi 或行動網路,以及 App 顯示的原始提示。
- 說明是首次匯入失敗,還是原本正常的訂閱突然無法更新;並註明舊項目是否仍存在。
- 提供訂閱網域與已遮蔽敏感資訊的路徑特徵,並說明是否重新複製過目前有效的網址。
- 說明是否測試過
Update via Proxy、當時代理連線是否可用,以及切換網路後結果有沒有改變。 - 請服務商確認帳戶是否有效、是否有存取限制、訂閱本文是否為空,以及回傳格式是否適用於 Shadowrocket。
瀏覽器可以開啟連結,為什麼仍然解析失敗?
先確認開啟的是訂閱本文,還是登入頁面、提示頁面。若只看到網頁介面,請回到自己的服務商帳戶重新複製適用於 Shadowrocket 的訂閱網址;登入網頁成功不代表訂閱格式有效。
需要先刪除整份訂閱再重新匯入嗎?
請先保留原有項目,檢查連結並執行一次更新。只有在確認新網址有效、原有資訊已妥善保存,且確實需要重建時,再處理舊訂閱,以免刪除仍可使用的連線資訊。
更新成功後有列表,但所有伺服器都無法連線,該怎麼辦?
這時應改為排查連線問題。先選一個項目確認連線狀態,再向服務商確認連接埠、驗證資訊與服務是否有效;不要反覆匯入同一份訂閱,也不要把列表中有項目視為線路可用的保證。
買了 Shadowrocket,為什麼還需要自己的訂閱?
買斷用戶端 ≠ 線路方案。購買 Shadowrocket 是取得用戶端;伺服器與訂閱則由使用者自己的服務商提供。本網站不提供、不銷售,也不推薦節點或訂閱。