当前位置: 首页 > news >正文

【VScode】Remote-SSH XHR failed无法访问远程服务器

问题概述

当使用VScode连接远程服务器时,往往需要使用Remote-SSH这个插件。而该插件有一个小bug,当远程服务器网络不佳时容易出现。

在控制台会出现下述语句:

Resolver error: Error: XHR failed at y.onerror (vscode-file://vscode-app/d:/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:77:1261)

原因与解决方法

原因

该插件在连接远程服务器时,插件会在服务器端自动运行一个脚本。该脚本的主要内容是检查服务器的vscode-server的运行情况,若服务器端不能运行,则会自动下载。而当服务器网络不佳时,下载往往会超时,导致连接失败。

解决方法

懂了报错的原因,那就可以从中找出解决方法。即手动在本地下载安装包,然后手动传到服务器端。这样是可以解决这个问题的,虽然不是很优雅。

步骤

  1. 通过其他SSH等方式(如:Xshell),进入远程服务器的Terminal。

  2. 在服务器端,进入下面的目录,获取commit id。

    $ ls ~/.vscode-server/bin
    2ccd690cbff1569e4a83d7c43d45101f817401dc
    

    在这里,我的commit id就是2ccd690cbff1569e4a83d7c43d45101f817401dc。

  3. 手动下载出问题的包(tarball),注意下面的COMMIT_ID要替换成自己在上一步得到的commit id。

    • 稳定版下载链接:https://update.code.visualstudio.com/commit:COMMIT_ID/server-linux-x64/stable
    • 内测版下载链接:https://update.code.visualstudio.com/commit:COMMIT_ID/server-linux-x64/insider

    如我的稳定版链接就是:https://update.code.visualstudio.com/commit:2ccd690cbff1569e4a83d7c43d45101f817401dc/server-linux-x64/stable

  4. 下载后会得到一个vscode-server-linux-x64.tar.gz,将其通过sftp等方式传到服务器上。路径:~/.vscode-server/bin/COMMIT_ID/vscode-server-linux-x64.tar.gz

  5. 在服务器端进入该路径,解压。

$ cd ~/.vscode-server/bin/$COMMIT_ID
$ tar -xvzf vscode-server-linux-x64.tar.gz --strip-components 1
  1. 重新使用VScode进行连接。

参考:

[1] https://stackoverflow.com/questions/56718453/using-remote-ssh-in-vscode-on-a-target-machine-that-only-allows-inbound-ssh-co
[2] https://github.com/microsoft/vscode-remote-release/issues/2792
[3] https://github.com/microsoft/vscode-remote-release/issues/3349

http://www.lryc.cn/news/112067.html

相关文章:

  • pycharm打开terminal报错
  • C#与C/C++交互(1)——需要了解的基础知识
  • LeetCode笔记:Weekly Contest 356
  • 2 Python的基础语法
  • 抖音seo矩阵系统源代码开发搭建技术分享
  • python#django数据库一对一/一对多/多对多
  • 记RT-Thread rt_timer_start函数的问题
  • C++初阶——拷贝构造和运算符重载(const成员)
  • go练习 day01
  • C# Blazor 学习笔记(0.1):如何开始Blazor和vs基本设置
  • 原码的乘法运算 补码乘法运算
  • 找不到d3dx9_43.dll丢失怎么解决(分享几种解决方法)
  • 篇四:建造者模式:逐步构造复杂对象
  • vs导出和导入动态库和静态库
  • 30 使用easyExcel依赖生成Excel
  • 排序进行曲-v2.0
  • 反弹shell的N种姿势
  • 创意视频剪辑教程:快速合并视频并标题,让你的作品更吸睛!
  • 解决Hadoop审计日志hdfs-audit.log过大的问题
  • 【Java】java和kotlin关于Json写文件
  • 【深度学习】采用自动编码器生成新图像
  • 华为云交付
  • dns瞅一瞅
  • springAOP的实例
  • 【JavaEE】深入了解Spring中Bean的可见范围(作用域)以及前世今生(生命周期)
  • P1320 压缩技术(续集版)
  • k8s(七) 叩丁狼 service Ingress
  • Android Studio 关于BottomNavigationView 无法预览视图我的解决办法
  • 【STM32】小电流FOC驱控一体板(开源)
  • 代码分析:循环创建N个子进程——为什么最后一个属于父进程?