Shadowrocket(小火箭)顯示已連線,不代表 ChatGPT 的每個請求都已經走代理,也不代表目前使用的 DNS、伺服器出口或服務端狀態都正常。本文適合已備妥自己的服務商資料、但 ChatGPT 網頁或 App 無法載入的使用者:先確認 Global Routing 與網域規則,再檢查 DNS 和伺服器狀態,最後透過 Wi-Fi、行動網路交叉測試,判斷問題較可能出在哪個環節。
一、先確認 ChatGPT 流量確實走代理
Home 上的連線開關只表示 Shadowrocket 正在使用 VPN 設定處理流量,不代表特定網域一定命中代理規則。若 Global Routing 設為 Direct,ChatGPT 請求會依直連方式處理;設為 Config 時,才會依目前選取的設定檔及規則分流。Scene 則可能依已設定的情境套用不同方式,排查時要先確認它目前使用的設定。
先前若設定過「只有指定網站走代理」,也要確認規則涵蓋目前實際使用的 ChatGPT 網域。網站可能會連線至不同網域處理登入、API、圖片或其他資源;只放行首頁網域,不一定能涵蓋所有請求。以下網域僅作為檢查起點,不是完整或永久不變的清單:請以目前 Config、連線記錄及實際請求為準。
路由模式核對
- Config
- 依目前選取的設定檔和規則處理
- Proxy
- 作短時間對照,檢查是否與規則有關
- Direct
- 直連處理,不能用來驗證代理規則
- Scene
- 先檢查情境設定是否改變路由
測試時記下模式;完成後恢復原本需要的設定。
網域規則核對
- 範例網域
chatgpt.com- 相關網域
openai.com、auth.openai.com- 規則方向
- 確認命中策略是 PROXY,而不是 DIRECT
- 排列順序
- 檢查前方是否已有更廣泛的規則
網域清單會隨服務調整;不要只依範例推定涵蓋所有請求。
如果需要短暫測試路由因素,可在 Home → Global Routing 將模式改為 Proxy,然後重新載入 ChatGPT。若這樣能開啟、Config 模式卻不行,問題較可能在規則命中、策略選擇或 Config 本身。這只是一項排查測試,不代表應長期使用 Proxy;測試後請還原原本模式。
[Rule]
DOMAIN-SUFFIX,chatgpt.com,PROXY
DOMAIN-SUFFIX,openai.com,PROXY
FINAL,DIRECT
此片段只示範規則格式,不能直接視為涵蓋 ChatGPT 全部服務網域的完整設定。規則由上而下比對;若在這些規則前已有涵蓋範圍較廣的 DIRECT 規則,後面的 PROXY 可能不會生效。修改前先備份目前 Config,並確認其餘原有規則仍保留。
二、依序操作:模式、規則與網路交叉測試
排查時一次只改一項,否則即使頁面恢復,也難以判斷是哪個變更造成差異。先記錄目前選取的伺服器、Global Routing 模式、網路類型和錯誤畫面;不要在過程中同時更改 DNS、伺服器參數及多條規則。
- 確認伺服器已選取:在 Home 查看目前選中的伺服器,並執行 Connectivity Test。測試成功只代表該測試請求收到回應,不等於 ChatGPT 的網域規則、DNS 和實際網頁請求都已驗證。
- 檢查 Global Routing:確認目前是 Config、Proxy、Direct 還是 Scene。若使用 Config,確認生效的是預期設定檔;若使用 Scene,先查看目前情境套用的路由。
- 核對規則命中:在 Config 中檢查 ChatGPT 請求所用網域的策略是否為 PROXY,並查看規則前方有沒有先命中的 DIRECT 或其他策略。新增規則前保留原設定,避免覆蓋整份 Config。
- 短暫切換測試:若原本使用 Config,可短暫改成 Proxy 後重新載入頁面。若測試結果有差異,切回 Config,再針對規則逐項核對;若沒有差異,繼續檢查 DNS 和伺服器出口。
- 切換網路重測:保持相同伺服器、模式與規則,先在 Wi-Fi 測試,再關閉 Wi-Fi 改用行動網路測試。每次切換後重新載入頁面,並記下結果與錯誤訊息。
在 iPhone 或 iPad 上,Wi-Fi 與行動網路的 DNS、路由和網路限制可能不同。若只在其中一種網路失敗,應先檢查該網路的連線條件,不要立刻認定 ChatGPT 帳號或整份 Config 有問題。若兩種網路都失敗,但同一伺服器上的 Connectivity Test 有回應,也仍須確認目標網域的請求是否真的走到代理。
- Proxy 暫測可用、Config 不可用:優先查看規則順序、策略名稱和目前生效的 Config。
- Wi-Fi 失敗、行動網路可用:檢查 Wi-Fi 的 DNS、路由器限制或網路本身的連線狀態。
- 兩種網路都失敗,換用自己已有的另一台伺服器後恢復:原伺服器或其出口可能異常,仍應以服務商提供的狀態資訊確認。
- 其他網頁正常,只有 ChatGPT 失敗:檢查 ChatGPT 相關網域規則、DNS 回應,以及服務端對目前出口的處理。
三、檢查 DNS、伺服器狀態與出口限制
DNS 負責把網域名稱解析成 IP 位址。解析失敗時,瀏覽器可能在建立代理連線前就無法找到目標;解析結果異常或規則只對部分網域生效時,也可能出現登入頁能開、對話頁或其他資源載入失敗的情形。DNS 設定名稱及可用選項可能因 Shadowrocket 版本、設定檔和目前環境而不同,請以裝置上的實際介面為準。
先檢查 Settings 或目前 Config 中是否指定 DNS,以及是否有重複、互相衝突的 DNS 設定。若要做對照,可暫時使用自己信任且可連線的 DNS 解析方式,並只改這一項;測試後記下結果,再決定是否保留。不要因為網站打不開,就隨意填入來路不明的 DNS 位址,也不要在不清楚作用範圍時同時開啟多種 DNS 轉送設定。
錯誤:ERR_NAME_NOT_RESOLVED
原因與處理:瀏覽器未能解析目標網域。檢查目前 DNS 設定、Config 中的 DNS 欄位及網路是否可用;若只在一種網路發生,先針對該網路重測。
錯誤:ERR_CONNECTION_TIMED_OUT
原因與處理:目標連線未在限定時間內完成,可能與伺服器狀態、路由或網路品質有關。重新執行 Connectivity Test,核對代理模式,並使用自己已有的另一台伺服器作對照。
錯誤:Something went wrong
原因與處理:這類服務端提示不能單獨判定為 DNS 或代理故障。確認其他 ChatGPT 頁面元件是否能載入,重試一次,再檢查網域規則、伺服器出口及服務端狀態。
若 DNS 解析看似正常、Connectivity Test 也收到結果,但 ChatGPT 仍持續拒絕請求,可能是目前伺服器出口、帳戶條件或服務端政策所致。服務端是否允許特定請求,不能只靠更換 DNS 推斷;可查看 ChatGPT 官方服務狀態與帳戶提示,並確認自己的使用環境符合服務條款和所在地適用規範。若其他網域正常、只有 ChatGPT 相關請求失敗,記錄發生時間、網路類型及錯誤內容,有助於向服務商或官方支援描述問題。
判斷方向:別把「已連線」當成「網站可用」
Connectivity Test 回應、網域命中 PROXY、DNS 成功解析及 ChatGPT 請求獲得服務端回應,是不同層次的檢查。依序確認,通常比反覆開關 VPN 或一次更改多項設定更容易定位問題。
四、常見問題
Shadowrocket 顯示已連線,為什麼 ChatGPT 還是打不開?
連線狀態不代表目標網域已走代理。先到 Home → Global Routing 核對模式;使用 Config 時再檢查 ChatGPT 相關網域是否命中 PROXY,以及前方是否有先命中的 DIRECT 規則。
Connectivity Test 成功,可以證明伺服器沒有問題嗎?
不能完全證明。它只表示該次測試請求收到結果,並未驗證 ChatGPT 使用的每個網域、DNS 解析或服務端處理。請再用瀏覽器實際開啟 ChatGPT,並對照規則命中情況。
我應該把所有 OpenAI 網域都加進 PROXY 嗎?
不建議只憑一份固定清單大量新增規則。先備份 Config,再依實際請求確認需要的網域;添加後逐項測試,並檢查規則是否被更前面的廣泛規則攔截。
換了 DNS 仍然無法登入,下一步怎麼做?
還原或記下 DNS 變更,使用相同規則比較 Wi-Fi 與行動網路,再以自己已有的其他伺服器作短暫對照。若只有 ChatGPT 失敗,查看服務端狀態和帳戶提示,避免反覆更改不相關設定。