ChatGPT 在 iPhone 上載入很久、App 顯示連線失敗,或 Safari 能開啟但 App 不行時,先不要立刻修改伺服器參數。排查的關鍵是固定測試條件:確認 Shadowrocket 已連線、記下目前的 Global Routing 與選取項目,再分別比較 Wi-Fi 和行動網路。本文以你已備有自己的訂閱或連線設定為前提,不提供或推薦節點、訂閱與服務。
本文整理 ChatGPT 在 iPhone 上無法開啟、持續轉圈或 App 與網頁表現不同時的排查順序:先確認 VPN 連線,再檢查 Global Routing、規則、DNS 與選取的伺服器,最後用相同操作比較 Wi-Fi 和行動網路。每次只改一項,才能判斷故障來自本機設定、網路環境,還是代理出口。
先分辨故障發生在哪一層
「Shadowrocket 顯示已連線」只代表裝置建立了 VPN 通道,不等於 ChatGPT 的每個網域都已按預期路由,也不表示 DNS 查詢、TLS 連線及服務端回應全部成功。反過來說,ChatGPT 暫時無法使用,也不一定代表訂閱失效。先記下失敗發生的位置與畫面提示,避免把不同問題混在一起處理。
- Safari 和 ChatGPT App 都無法載入:先檢查目前連線項目、Global Routing、規則與 DNS,再比較 Wi-Fi 和行動網路。
- Safari 可開啟,App 不行:先確認 App 是否已更新至可用版本、重新啟動 App,並確認兩種測試使用相同的 Shadowrocket 設定。不要僅憑此現象判定是伺服器故障。
- 登入頁能開,對話送出後失敗:DNS 和初始連線可能正常,問題也可能發生在後續請求、登入狀態或服務端回應;記錄失敗步驟與提示原文。
- 關閉 Shadowrocket 後也無法開啟:這時應先確認一般網路是否可用,再判斷是否為 VPN 路由問題。不要同時重設網路、修改 DNS 與更換伺服器。
測試時固定同一個 ChatGPT App 或 Safari 頁面、同一個帳號與同一個操作,例如重新載入首頁或送出一則不含敏感資料的短訊息。不同測試項目之間等待一會並記下時間;服務端狀態會變動,前後相隔很久的結果不適合直接比較。
確認連線與分流規則
回到 Shadowrocket 的 Home,確認連線開關已開啟、狀態不是 Not Connected,並確認 SERVER 中實際選取的是哪一個項目。接著查看 Global Routing。若使用 Config,ChatGPT 相關請求會依目前設定檔的規則與策略處理;若規則將某些網域指向 DIRECT,即使其他流量經過代理,ChatGPT 仍可能走直連。
規則通常按順序比對,並由符合條件的規則選擇 PROXY、DIRECT 或策略群組等動作。不要只看設定檔名稱,也不要把「已選用 Config」理解成所有流量必定經代理。若設定檔由你自行管理,檢查相關網域規則、策略群組是否有可用選項,以及末尾 FINAL 等後援規則的實際內容。不要為了猜測而大量加入不熟悉的網域或改寫整份規則。
Home 連線核對
- 連線狀態
- 確認不是
Not Connected - SERVER
- 記下目前選取的項目
- Global Routing
- 記錄目前是
Config、Proxy或Direct
先保存原始狀態,再做單項測試;測完應還原原設定。
Config 規則核對
- 匹配結果
- 確認 ChatGPT 請求是否命中預期規則
- 策略目標
- 確認規則指向的代理或策略群組有選取項目
- 後援規則
- 查看未匹配請求最後採取的動作
規則與訂閱內容以你目前使用的設定為準,不要依照不明範例覆蓋。
若你熟悉目前的規則設定,可短暫把 Global Routing 切換為 Proxy,用來判斷是否與 Config 分流有關。這只是診斷,不是建議長期使用的模式:測試期間觀察同一項操作,完成後立即恢復原設定。若切到 Proxy 仍失敗,不能因此斷定是 DNS;伺服器連線、出口可達性、服務端狀態與 App 本身仍需分別排查。
依序測試 DNS 與網路環境
DNS 會把網域名稱解析成連線所需的位址。DNS 解析失敗可能讓 ChatGPT 的部分請求無法開始,但只憑「一直轉圈」不能確認 DNS 就是原因。先查看 Shadowrocket 的測試結果或連線記錄中是否有 DNS 相關失敗,再檢查目前 DNS 設定是否為你原先採用的設定。若近期手動更改過 DNS,記下原值後一次還原一項,再以同一網路重測。
不要把不同用途的 DNS 選項混為一談:裝置 Wi-Fi 網路的 DNS 設定、Shadowrocket 內的 DNS 行為,以及規則對 DNS 請求的處理可能互相影響。若啟用了特殊解析、遠端解析或依規則分流等設定,先記錄目前狀態,僅在你理解原設定且能還原時做對照測試。不要任意填入網路上找到的 DNS 位址,也不要因為某一筆解析結果不同就判定設定錯誤。
-
記錄基準狀態
在 Shadowrocket 的 Home 記下連線狀態、SERVER 選取項目與
Global Routing。同時記錄目前是 Wi-Fi 還是行動網路,以及 ChatGPT 的具體失敗畫面。 -
測試 Wi-Fi
保持原有 Shadowrocket 設定,在 iPhone 的
Settings → Wi-Fi確認目前連線的網路名稱,然後只重測同一個頁面或 App 操作。若其他網站也無法載入,先處理該 Wi-Fi 的一般連線問題。 -
測試行動網路
前往
Settings → Cellular確認行動數據已開啟,依需要關閉 Wi-Fi 後重測相同操作。注意避免在訊號不穩或行動數據受限時,把結果直接歸因於代理出口。 -
比較單一變因
比較兩種網路的結果時,保持 SERVER、
Global Routing、DNS 與 ChatGPT 操作一致。若要測試Proxy對照,只改這一項,記錄結果後恢復原設定,再進行下一項檢查。 -
保存錯誤資訊
若仍失敗,記下發生時間、網路類型、Shadowrocket 顯示狀態與提示原文。不要公開包含訂閱網址、UUID、密碼或個人帳號資料的畫面。
判斷重點:用兩種網路定位,不用猜測
若同一項設定在 Wi-Fi 失敗、行動網路成功,優先檢查 Wi-Fi 路由器、DNS 或網路限制;若兩種網路都只有特定 SERVER 失敗,檢查該項參數及出口可達性。這些結果只能縮小範圍,不能單獨證明是哪個環節出錯。
檢查伺服器與錯誤提示
同一個設定在不同網路都失敗時,回到 Home 確認選取項目沒有在更新或切換後改變。若使用自己的訂閱,檢查更新是否成功、清單中是否仍有實際伺服器項目;若是手動新增,將位址、連接埠、協定與驗證資訊逐項對照原始資料。不要只因為連接埠看起來常見,或名稱顯示正常,就認為參數一定正確。
如果 Shadowrocket 的記錄中出現下列訊息,可依其含義縮小排查範圍。不同版本、網路環境或故障位置的錯誤文字可能不同,以下是一般連線診斷用語,不保證每個畫面都會逐字顯示。請先看完整訊息與發生時間,不要只擷取其中一個詞。
DNS lookup failed
原因與解法:名稱解析未成功,可能與目前 DNS 設定或網路回應有關。先在同一網路重測,再檢查近期變更過的 DNS 選項;一次還原一項並記錄結果,不要同時更換多個 DNS 來源。
Connection timed out
原因與解法:在等待時間內未完成連線,可能是所選伺服器、網路路徑或遠端服務沒有回應。比較 Wi-Fi 與行動網路,並確認 SERVER 選取項目和原始連接參數;不要把逾時直接當成密碼錯誤。
Connection refused
原因與解法:連線目標拒絕此次連線,常需確認位址、連接埠及伺服器端是否接受該協定。將手動欄位或訂閱項目與你已有的原始資料比對;若參數已相符,向原設定提供者確認服務端狀態。
TLS handshake failed
原因與解法:TLS 交握未完成,可能涉及伺服器名稱、時間、憑證或傳輸參數。確認 iPhone 的日期與時間設定,以及 TLS、SNI 等欄位是否與原始設定一致;不要以關閉憑證驗證作為修復方式。
常見問題
Shadowrocket 顯示已連線,為什麼 ChatGPT 還是轉圈?
VPN 已連線不代表 ChatGPT 請求一定命中代理規則。先查看 Global Routing;若使用 Config,核對相關規則的動作與策略群組,再用同一操作短暫測試 Proxy。測完恢復原設定,並記錄兩次結果。
Wi-Fi 不行、行動網路可以,應先改 DNS 嗎?
不必先改。先確認兩次測試使用相同 SERVER、路由模式與 ChatGPT 操作,再檢查 Wi-Fi 本身是否能載入其他網站及是否近期更改 DNS。只有在結果指向名稱解析或 Wi-Fi 網路時,才逐項檢查相關設定。
Safari 能開 ChatGPT,但 App 不能,代表代理有問題嗎?
不一定。確認兩者是在同一網路、同一 Shadowrocket 設定下測試,重新啟動 App 並檢查登入狀態,再記錄錯誤發生在開啟、登入還是送出訊息時。若只有 App 異常,不要只靠切換路由模式推斷伺服器故障。
可以直接關閉憑證驗證或重設所有設定嗎?
不建議。關閉憑證驗證會降低伺服器身分檢查能力;重設所有設定則可能移除原有規則與參數。先保存現況、每次只檢查一項,只有在確認原值並能還原時才做對照測試。