????????今天在使用 vscode 連接遠程主機時,突然再次遇到這個問題,按照以往的經驗,直接按照這個博主的文章其實就能解決,但是不知道為什么,今天這個方案失效了,然后卸載安裝服務器和本機的vscode什么的也都試過了,都無法解決問題,摸索了許久才找到新的解決方案,不知是否是版本更新導致,特此記錄一下:【VScode】Remote-SSH XHR failed無法訪問遠程服務器_vscode ssh xhr failed-CSDN博客
????????一般 vscode 連接遠程主機失敗會報如下問題:
[14:21:52.140] server download URL: https://update.code.visualstudio.com/commit:258e40fedc6cb8edf399a463ce3a9d32e7e1f6f3/cli-alpine-arm64/stable
[14:21:52.140] Downloading VS Code server locally...
[14:22:00.159] Resolver error: Error: Failed to download VS Code Server (Failed to fetch)
? ? ? ? 注意此處的 commit_id 是?258e40fedc6cb8edf399a463ce3a9d32e7e1f6f3 ,?后續需要用到,當然也可以通過點擊 vscode 上方工具條的 Help 下的 About 獲得自己的 vscode 的 commit_id
? ? ? ? 具體解決方案如下:? ? ? ?
1. 手動下載兩個文件
????????分別是 vscode-server-linux-arm64.tar.gz 和?vscode_cli_alpine_arm64_cli.tar.gz,將下述命令貼到瀏覽器即可(以上是 arm 架構版本)
https://update.code.visualstudio.com/commit:commit_id/cli-alpine-arm64/stable
https://update.code.visualstudio.com/commit:commit_id/server-linux-arm64/stable
????????注意替換?commit_id 為自己的 vscode 的 commit_id,此外如果遠程服務器是 x86 架構的,需要替換上述命令的 arm64 為 x86 。
2.?上傳文件到遠程服務器
? ? ? ? 將兩個文件傳輸到?.vscode-server 目錄下,并執行如下命令
# 1. 切換到 vscode-server 目錄下
cd .vscode-server
# 2. 創建目錄(如果存在就不需要)
mkdir -p cli/servers
# 3. 移動 vscode-server-linux-arm64.tar.gz 到 cli/servers?目錄
mv vscode-server-linux-arm64.tar.gz cli/servers
# 4. 解壓 vscode-server-linux-arm64.tar.gz
tar -zxvf vscode-server-linux-arm64.tar.gz
# 5. 重命名解壓后的文件,注意將 [commit_id] 替換為自己實際的,比如我的就是
# mv?vscode-server-linux-arm64?Stable-258e40fedc6cb8edf399a463ce3a9d32e7e1f6f3
mv?vscode-server-linux-arm64?Stable-[commit_id]
# 6. 配置 lru.json
vim lru.json
# 在 lru.json 中輸入如下內容,并保存,注意將 [commit_id] 替換為自己實際的
["Stable-[commit_id]"]
# 7. 返回到 vscode-server 目錄并解壓 vscode_cli_alpine_arm64_cli.tar.gz
tar -zxvf vscode_cli_alpine_arm64_cli.tar.gz
# 8. 將解壓得到的 code 重命名,注意將 [commit_id] 替換為自己實際的
mv?code?code-[commit-id]
? ? ? ? 然后重新打開vscode 進行遠程連接,就可以繼續“愉快”的碼字之旅了!