Tools
瀏覽器疑難排解
問題:無法在連接埠 18800 上啟動 Chrome CDP
{ "error": "錯誤:無法在連接埠 18800 上為設定檔 \"openclaw\" 啟動 Chrome CDP。" }根本原因
在 Ubuntu 和大多數 Linux 發行版上,apt install chromium 安裝的是 snap
包裝程式,而不是真正的瀏覽器:
注意,選擇 'chromium-browser' 而非 'chromium'chromium-browser 已是最新版本 (2:1snap1-0ubuntu2)。Snap 的 AppArmor 限制會干擾 OpenClaw 產生及監控 瀏覽器程序的方式。
其他常見的 Linux 啟動失敗原因:
The profile appears to be in use by another Chromium process:受管理設定檔目錄中有過期的Singleton*鎖定檔案。當鎖定指向已終止或 不同主機的程序時,OpenClaw 會移除這些鎖定並重試一次。Missing X server or $DISPLAY:在沒有桌面工作階段的主機上,明確要求啟動可見的瀏覽器。 在 Linux 上,若DISPLAY和WAYLAND_DISPLAY均未設定,本機受管理設定檔會退回 無頭模式。若你設定了OPENCLAW_BROWSER_HEADLESS=0、browser.headless: false或browser.profiles.<name>.headless: false,請移除該有頭模式覆寫、設定OPENCLAW_BROWSER_HEADLESS=1、啟動Xvfb、執行openclaw browser start --headless進行一次性受管理啟動,或在 真正的桌面工作階段中執行 OpenClaw。
解決方案 1:安裝 Google Chrome(建議)
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.debsudo dpkg -i google-chrome-stable_current_amd64.debsudo apt --fix-broken install -y # 如果發生相依性錯誤更新 ~/.openclaw/openclaw.json:
{ "browser": { "enabled": true, "executablePath": "/usr/bin/google-chrome-stable", "headless": true, "noSandbox": true }}解決方案 2:以僅附加模式使用 snap Chromium
如果你必須保留 snap Chromium,請將 OpenClaw 設定為附加至 手動啟動的瀏覽器,而非自行啟動瀏覽器:
{ "browser": { "enabled": true, "attachOnly": true, "headless": true, "noSandbox": true }}手動啟動 Chromium:
chromium-browser --headless --no-sandbox --disable-gpu \ --remote-debugging-port=18800 \ --user-data-dir=$HOME/.openclaw/browser/openclaw/user-data \ about:blank &也可以選擇使用 systemd 使用者服務自動啟動:
# ~/.config/systemd/user/openclaw-browser.service[Unit]Description=OpenClaw 瀏覽器 (Chrome CDP)After=network.target [Service]ExecStart=/snap/bin/chromium --headless --no-sandbox --disable-gpu --remote-debugging-port=18800 --user-data-dir=%h/.openclaw/browser/openclaw/user-data about:blankRestart=on-failureRestartSec=5 [Install]WantedBy=default.targetsystemctl --user enable --now openclaw-browser.service驗證瀏覽器是否正常運作
curl -s http://127.0.0.1:18791/ | jq '{running, pid, chosenBrowser}'curl -s -X POST http://127.0.0.1:18791/startcurl -s http://127.0.0.1:18791/tabs設定參考
| 選項 | 說明 | 預設值 |
|---|---|---|
browser.enabled |
啟用瀏覽器控制 | true |
browser.executablePath |
Chromium 架構瀏覽器二進位檔的路徑(Chrome/Brave/Edge/Chromium) | 自動偵測(若作業系統預設瀏覽器採用 Chromium 架構,則優先使用) |
browser.headless |
在沒有圖形使用者介面的情況下執行 | false |
OPENCLAW_BROWSER_HEADLESS |
針對本機受管理瀏覽器無頭模式的個別程序覆寫 | 未設定 |
browser.noSandbox |
新增 --no-sandbox 旗標(部分 Linux 設定需要) |
false |
browser.attachOnly |
不啟動瀏覽器;僅附加至現有瀏覽器 | false |
在 Raspberry Pi、較舊的 VPS 主機或速度較慢的儲存裝置上,若 Chrome 公開其 CDP HTTP
端點或就緒所需的時間超過受管理瀏覽器允許的期限,請使用以 attachOnly
手動啟動的瀏覽器。
問題:找不到 profile="user" 的 Chrome 分頁
你正在使用 user(existing-session / Chrome MCP)設定檔,但沒有
可供附加的已開啟分頁。
修正選項:
- 改用受管理瀏覽器:
openclaw browser --browser-profile openclaw start(或設定browser.defaultProfile: "openclaw")。 - 讓本機 Chrome 保持執行且至少開啟一個分頁,然後使用
--browser-profile user重試。
注意事項:
user僅限主機使用。在 Linux 伺服器、容器或遠端主機上,請優先使用 CDP 設定檔。user和其他existing-session設定檔受限於目前的 Chrome MCP 限制:僅支援以參照為基礎的動作、每次上傳一個檔案、不支援對話方塊timeoutMs覆寫、不支援wait --load networkidle,也不支援responsebody、PDF 匯出、 下載攔截或批次動作。- 本機
openclaw驅動程式設定檔會自動指派cdpPort/cdpUrl;僅針對 遠端 CDP 手動設定這些值。 - 遠端 CDP 設定檔接受
http://、https://、ws://和wss://。 使用 HTTP(S) 進行/json/version探索;若瀏覽器 服務提供直接的 DevTools 通訊端 URL,則使用 WS(S)。
相關內容
Was this useful?