Clash 訂閱連結怎麼匯入:URL 匯入步驟與常見訂閱格式差異
從複製訂閱連結到用戶端套用的完整流程,並解析 Clash 原生 YAML、Base64 節點清單與需轉換格式的差異,協助找出連結無法識別的原因。
Clash 中的「匯入訂閱」不只是儲存網址。用戶端會存取這個 URL,下載遠端回傳的設定內容,判斷目前核心能否解析該格式,再將結果儲存為本機設定。匯入完成後,通常還要選取這份設定、選擇代理節點,並啟用系統代理或 TUN 模式,流量才會真正經過 Clash。
多數匯入問題集中在三個環節:複製到的不是訂閱網址、伺服器回傳的內容不屬於目前用戶端支援的格式,或設定已成功下載卻未設為目前設定。以下先完成一次標準 URL 匯入,再逐一辨識 YAML、Base64 節點清單與單一分享連結。
匯入前先確認取得的是訂閱 URL
可用於遠端更新的訂閱通常以 https:// 開頭,複製後應是一整行網址,例如:
https://sub.example.com/api/client/subscribe?token=abc123&target=clash
網頁網址、購買頁面、控制台登入網址和訂閱 URL 並不是同一回事。如果用瀏覽器開啟後看到完整的帳戶後台、方案資訊或登入表單,複製到的多半是一般網頁。正確入口通常標示為「Clash 訂閱」「Clash Meta」「複製訂閱網址」或「通用訂閱」。服務提供方列出多個按鈕時,優先選擇明確標示 Clash、Mihomo 或 Clash Meta 的版本。
複製後檢查這四項
- 協定完整:網址必須包含
https://或http://,不能只剩網域和路徑。 - 未混入其他文字:連結前後不應帶有「訂閱網址:」、引號、空格或換行。使用手機長按複製時,尤其容易多選一段說明文字。
- 查詢參數未遺失:
?後的 token、target 等參數可能決定身分與回傳格式,手動截短可能導致 401、403 或格式錯誤。 - 網址仍在有效期限內:重設訂閱、遷移帳戶或更換方案後,舊 URL 可能立即失效,需要回到服務頁面重新複製。
分享連結則是另一類內容。以 ss://、trojan://、vmess://、vless:// 或 hysteria2:// 開頭的字串,通常只描述一個節點,並不是可定期更新的 HTTP 訂閱網址。部分用戶端支援直接匯入單一節點,但應使用「從剪貼簿匯入」或「新增節點」,而不是訂閱 URL 輸入框。
Clash 訂閱連結的標準匯入步驟
不同用戶端的選單名稱略有差異,但處理順序一致:開啟設定管理頁、貼上 URL、下載設定、啟用設定,最後確認節點與流量狀態。以下步驟適用於採用 Mihomo 核心的常見桌面版與 Android 用戶端。
桌面版:Clash Verge Rev 類用戶端
- 啟動用戶端,進入左側的「訂閱」頁面。
- 在頁面上方的訂閱網址輸入框貼上完整 URL。
- 點選「匯入」或按下 Enter,等待遠端設定下載完成。網路正常時通常可在 1~10 秒內完成。
- 匯入後檢查設定卡片是否顯示節點數量、更新時間與更新按鈕。
- 點選設定卡片,將其設為目前啟用的訂閱。部分版本會顯示選取狀態或「目前設定」。
- 進入「代理」頁面,在策略組中選擇延遲合適的節點,或先執行一次延遲測試。
- 進入「設定」→「系統代理」,開啟系統代理開關。需要接管不遵循系統代理的程式時,再設定 TUN 模式。
Android:Clash Meta for Android 類用戶端
- 進入「設定」頁面,點選右上角的加號。
- 選擇「從 URL 匯入」或「新增設定」→「URL」。
- 填寫設定名稱,例如「日常訂閱」,再於 URL 欄位貼上完整連結。
- 自動更新間隔可先設為
1440分鐘,也就是每天更新一次;服務方有特殊要求時,請依其說明調整。 - 儲存並等待下載,接著返回設定清單,點選剛建立的設定。
- 回到首頁啟動服務,再進入代理組選擇節點。Android 首次啟動時會跳出 VPN 連線授權,需由系統確認。
匯入後的快速驗收
完成匯入後,可以透過以下結果判斷每個步驟是否生效:
- 設定頁顯示訂閱名稱與最近更新時間,不再提示解析錯誤。
- 代理頁能看到
PROXY、節點選擇、自動選擇等策略組,以及組內的節點。 - 延遲測試能回傳具體毫秒數,例如 85 ms、210 ms,而不是一直顯示逾時。
- 記錄頁面出現連線紀錄,並顯示命中的規則、目標網址與最終策略。
- 更新按鈕可以再次拉取設定,不必重新貼上 URL。
什麼是 Clash 原生 YAML
Clash 原生設定是一份結構化 YAML 檔案。完整設定通常包含監聽連接埠、運作模式、DNS、節點、策略組與規則等欄位。Mihomo 延續了這套基本結構,並加入更多協定與設定能力。適用於 Clash 的遠端訂閱若直接回傳完整 YAML,用戶端通常可以立即解析。
mixed-port: 7890
mode: rule
allow-lan: false
proxies:
- name: Example-Trojan
type: trojan
server: edge.example.com
port: 443
password: demo-password
sni: edge.example.com
proxy-groups:
- name: 節點選擇
type: select
proxies:
- Example-Trojan
- DIRECT
rules:
- GEOIP,CN,DIRECT
- MATCH,節點選擇
這段範例具備完整設定的主要輪廓:mixed-port: 7890 讓 HTTP 與 SOCKS 請求共用本機混合連接埠;mode: rule 表示依規則分流;proxies 儲存節點;proxy-groups 組織供使用者選擇的策略;rules 決定連線最終採直連或代理。
完整設定與代理集合 YAML 的差異
並非所有副檔名為 .yaml 的檔案都能直接作為主設定。有一種代理集合檔案只包含 payload,通常由主設定中的 proxy-providers 引用:
payload:
- name: Example-SS
type: ss
server: node.example.com
port: 8388
cipher: aes-128-gcm
password: demo-password
如果把這類 provider 檔案直接放入一般設定匯入框,用戶端可能提示缺少 proxies、proxy-groups 或 rules,也可能匯入後沒有可選的策略組。它本身不是完整主設定,需要由包含 proxy-providers、策略組與規則的主 YAML 呼叫。
| 內容類型 | 常見開頭或欄位 | 能否直接作為 Clash 設定 |
|---|---|---|
| 完整 Clash YAML | mixed-port、proxies、proxy-groups |
通常可以 |
| 代理集合 YAML | payload: |
通常需要由主設定引用 |
| 規則集合 YAML | payload: 後接網域或規則 |
不能單獨作為主設定 |
| 網頁錯誤內容 | <html>、登入提示、錯誤頁面 |
不能 |
Base64 節點清單為何可能無法識別
通用訂閱經常將多條節點分享連結逐行排列,再把整段文字編碼為 Base64。解碼後的內容可能如下:
ss://[email protected]:8388#Example-SS
trojan://[email protected]:443?security=tls#Example-Trojan
vmess://encoded-json-data
這類內容不是 Clash YAML,沒有 proxy-groups 和 rules。支援訂閱轉換的用戶端可能在匯入時自動將節點清單轉換為內部設定;只接受 Clash YAML 的用戶端則會提示 YAML 解析失敗、設定格式錯誤,或匯入後沒有策略組。
先選擇服務方提供的 Clash 格式
如果訂閱頁面同時提供「通用訂閱」「Clash」「Clash Meta」「Surge」等選項,優先複製 Clash 或 Clash Meta 連結。由訂閱服務端直接產生目標格式,節點協定、策略組與規則也更容易與目前核心相符。
只有通用 Base64 連結時,應先確認用戶端是否明確支援該格式。不要只根據 URL 副檔名判斷:許多訂閱網址沒有 .yaml 副檔名,而是透過查詢參數、請求標頭或服務端設定決定回傳內容。瀏覽器下載的檔名叫做 subscribe,實際上也可能是一份有效 YAML。
單一節點分享連結不等於 Base64 訂閱
vmess:// 後的主體通常本身是 Base64 編碼資料,但它描述的是一個 VMess 節點;完整的 Base64 訂閱則是在編碼前包含多行分享連結。兩者的匯入入口可能不同。遇到單一連結時,先找用戶端的「從剪貼簿匯入」功能;需要長期自動更新時,則應向服務方取得 HTTPS 訂閱 URL。
URL 匯入失敗時依錯誤類型排查
同樣是「匯入失敗」,網路請求失敗與格式解析失敗的處理方向完全不同。先記下用戶端顯示的狀態碼、錯誤文字與發生時間,再對照下表定位問題。
| 現象或狀態 | 常見原因 | 優先處理方式 |
|---|---|---|
| 逾時、連線失敗 | 訂閱網域無法連線、DNS 異常、目前網路受到限制 | 切換網路,檢查系統時間與 DNS 後再試 |
| HTTP 401 或 403 | 權杖失效、帳戶狀態異常、請求受到限制 | 回到服務頁面重新複製訂閱,並確認帳戶狀態 |
| HTTP 404 | 路徑失效、舊訂閱已重設 | 不要手動修改 URL,取得新的完整網址 |
| YAML 解析錯誤 | 回傳 Base64、HTML 頁面或 YAML 縮排損壞 | 確認選擇 Clash 格式,並查看回應內容類型 |
| 匯入成功但節點為空 | 匯入的是規則集、provider 檔案或空訂閱 | 檢查是否存在 proxies 與策略組 |
| 節點存在但無法連線 | 節點無法使用、系統時間偏差、策略未選取 | 校正時間,測試其他節點並檢查策略組 |
用瀏覽器進行基本判斷
將訂閱 URL 貼到瀏覽器網址列,可以確認連結是否仍可存取。如果瀏覽器直接下載文字檔,表示伺服器至少有回應;如果跳轉到登入頁、方案頁面或驗證碼頁面,用戶端取得的也可能是 HTML,而不是設定。瀏覽器能開啟不代表格式一定正確,因為伺服器可能依據用戶端請求標頭回傳不同內容。
使用命令列檢查 HTTP 狀態
熟悉終端機操作時,可以只查看回應標頭。執行命令前,應避免在共享螢幕、終端機歷史同步或公開記錄中洩露真實權杖:
curl -I -L --max-time 15 "https://sub.example.com/api/client/subscribe?token=abc123&target=clash"
-I 只請求回應標頭,-L 會跟隨重新導向,--max-time 15 將最長等待時間限制為 15 秒。結果中的 200 表示請求已成功回傳;301 或 302 之後若最終進入登入頁,通常是授權或連結問題;404 表示路徑不存在。部分訂閱服務不回應 HEAD 請求,此時命令可能失敗,但用戶端的正常 GET 請求仍可使用。
檢查 YAML 縮排與欄位
手動儲存或編輯設定時,YAML 對縮排相當敏感。列表項目前的短橫線、冒號後的空格,以及同一層級的縮排都必須一致。Tab 字元也可能導致解析器報錯,通常應使用兩個空格縮排。若原始訂閱由服務端直接產生,不建議為了修改節點名稱而在下載檔案中大幅替換,下一次遠端更新也會覆蓋本機修改。
如何選擇自動更新間隔與本機設定
遠端訂閱適合需要同步節點變化的情境,本機 YAML 則適合測試規則、DNS 或策略組。將兩者混在同一份自動更新設定中時,本機修改可能在更新後消失,因此需要先釐清設定由誰維護。
更新間隔不要設得太短
常見的自動更新間隔是 1440 分鐘,也就是 24 小時;節點變動頻繁時可以設為 360 或 720 分鐘。設定為 1~5 分鐘會產生大量重複請求,服務端可能限制存取頻率。臨時需要最新節點時,直接點選一次「更新」更合適。
- 1440 分鐘:適合日常使用,更新頻率穩定。
- 720 分鐘:每天更新兩次,適合節點調整較頻繁的訂閱。
- 360 分鐘:每 6 小時更新一次,請確認服務方允許此頻率。
- 手動更新:適合長期固定的設定,使用前依需求重新整理。
更新訂閱時是否需要經過代理
部分用戶端提供「透過代理更新」或「使用系統代理更新訂閱」選項。當訂閱網域在目前網路可以直連時,先維持直連更新,連線路徑較簡單;只有直連逾時、且目前代理節點可用時,再嘗試透過代理更新。如果訂閱更新依賴正在使用的同一份失效設定,可能形成無法更新的循環,此時可切換網路,或先啟用另一份可用設定。
保留一份可復原的設定
調整 DNS、TUN 或複雜規則前,可以匯出目前可用的設定,或保留一份基礎本機設定。即使新訂閱出現欄位不相容,也能先恢復網路再繼續檢查。復原設定時仍要注意:舊設定中的節點可能已經過期,備份的主要價值在於保留連接埠、規則與運作參數。
匯入後未生效的最終檢查清單
訂閱已顯示「更新成功」,網頁卻仍無法開啟時,請依下列順序檢查。一次只修改一項,更容易判斷問題位於設定、節點還是系統接管環節。
- 確認設定清單中選取的是剛匯入的訂閱,而不是舊設定或空白的本機設定。
- 進入代理組,將主要策略從
DIRECT切換到延遲測試正常的節點。 - 確認運作模式為「規則」或「全域」。在規則模式下,符合
DIRECT的網站仍會直連,這是正常結果。 - 桌面版開啟「設定」→「系統代理」;Android 版確認 VPN 服務正在執行。
- 檢查本機連接埠是否衝突。常見混合連接埠為
7890,但應以目前設定中的mixed-port為準。 - 查看記錄中是否出現目標連線。完全沒有記錄通常表示應用程式流量沒有進入 Clash;有記錄但顯示連線逾時,則較接近節點或網路問題。
- 如果只影響不遵循系統代理的程式,再考慮 TUN 模式;不要把 TUN 當成修復訂閱格式錯誤的方法。
判斷訂閱格式時,最有用的線索不是檔名,而是實際回傳內容:完整 Clash YAML 應有節點、策略組與規則;provider YAML 只有供主設定引用的集合;Base64 通用訂閱解碼後通常是多條分享連結;HTML 則表示取得的是網頁或錯誤頁面。依照「取得 URL—下載回應—辨識格式—啟用設定—驗證流量」的順序檢查,通常可以快速定位匯入卡在哪個步驟。