疑難排解
設定代理設定
在具有網路限制的企業環境中為Bob Shell設定代理設定
錯誤訊息
嘗試使用Bob Shell時出現連線錯誤或逾時,例如:
- "無法連線到Bob服務"
- "網路請求失敗"
- "連線逾時"
- "SSL憑證驗證失敗"
- "ECONNREFUSED"或"ETIMEDOUT"錯誤
常見原因
你的組織要求所有HTTP/HTTPS流量通過代理伺服器流動,而不是允許直接連線。這在具有嚴格網路安全政策的企業環境中很常見。
解決方案
使用環境變數為Bob Shell設定代理設定,以通過組織的代理伺服器路由流量。
設定代理環境變數
在文字編輯器中開啟你的shell設定檔:
- 對於Bash:
~/.bashrc或~/.bash_profile - 對於Zsh:
~/.zshrc - 對於Fish:
~/.config/fish/config.fish
將以下環境變數新增到你的shell設定檔:
export HTTP_PROXY=http://proxy.example.com:8080
export HTTPS_PROXY=https://proxy.example.com:8080
export NO_PROXY=localhost,127.0.0.1將proxy.example.com:8080替換為你組織的實際代理伺服器位址和連接埠。
注意:
NO_PROXY變數指定應繞過代理的位址。新增不需要代理存取的任何內部網域或IP位址。
儲存設定檔並重新載入:
# 對於Bash
source ~/.bashrc
# 對於Zsh
source ~/.zshrc
# 對於Fish
source ~/.config/fish/config.fish驗證環境變數已設定:
echo $HTTP_PROXY
echo $HTTPS_PROXY透過啟動新工作階段來測試Bob Shell的連線性。
設定SSL憑證驗證
如果你的代理使用自簽憑證或自訂憑證授權單位,你可能需要設定SSL憑證驗證。
將SSL設定新增到你的shell設定檔:
# 停用嚴格的SSL驗證(不建議用於生產環境)
export NODE_TLS_REJECT_UNAUTHORIZED=0
# 或提供自訂CA憑證(建議)
export NODE_EXTRA_CA_CERTS=/path/to/your/ca-bundle.crt警告:
停用SSL驗證(NODE_TLS_REJECT_UNAUTHORIZED=0)會降低安全性,應僅暫時使用。使用NODE_EXTRA_CA_CERTS提供組織的憑證套件。
從IT團隊取得組織的憑證套件並將其儲存到安全位置。
更新NODE_EXTRA_CA_CERTS路徑以指向你的憑證套件檔案。
重新載入shell設定並測試Bob Shell的連線性。
暫時代理設定
對於不修改shell設定檔的暫時代理設定,在目前終端工作階段中設定環境變數:
export HTTP_PROXY=http://proxy.example.com:8080
export HTTPS_PROXY=https://proxy.example.com:8080
bobshell這些設定僅適用於目前終端工作階段,關閉終端時將遺失。
這個主題如何?