VSCode的http.proxy仅影响自身网络请求,不继承系统代理;填了仍连不上Marketplace主因是localhost/127.0.0.1被默认bypass规则排除,需用127.0.0.1而非localhost,并确保代理地址带http://前缀、远程场景单独配~/.vscode-server/data/Machine/settings.json。

VSCode 的 http.proxy 设置只影响它自己发起的请求(比如插件安装、GitHub 登录),不继承系统代理、不读环境变量、也不走浏览器代理——填错或漏配,插件市场就必然失败。
为什么填了 http.proxy 还是连不上 Marketplace
最常见原因是地址被本地「绕过规则」自动排除。Windows/macOS 默认把 localhost 和 127.0.0.1 加入 bypass list,导致 VSCode 发往 127.0.0.1:7890 的请求根本没进代理进程。
- 统一用
127.0.0.1,别写localhost(部分 VSCode 版本解析异常) - 如果代理跑在另一台局域网机器(如
192.168.1.100:8080),确认该机器防火墙放行端口,且代理软件开启局域网访问(Clash 需设allow-lan: true) -
http.proxy值必须带协议前缀:http://127.0.0.1:7890✅,127.0.0.1:7890❌(VSCode 会静默忽略) - 需要认证时格式为
http://user:pass@127.0.0.1:7890,密码含@或:要 URL 编码(如@→%40)
Remote-SSH 场景下 http.proxy 不生效?配置位置错了
本地 VSCode 的 http.proxy 设置不会透传给远程服务器上的 vscode-server 进程。Remote 插件安装失败,90% 是因为没在远程机器上单独配代理。
安装并运行 Aperture(Lightning Labs 的 L402 闪电反向代理),用于创建 L402 付费墙、配置付费 API 端点、为其他代理托管付费内容或测试 L402 认证流程。
- 路径必须是
~/.vscode-server/data/Machine/settings.json(注意是Machine,不是User或Remote) - 内容只需最小集:
{"http.proxy":"http://your-proxy:8080","http.proxyStrictSSL": false} - 改完必须断开并重连 Remote 连接——
vscode-server启动时才读这个文件,热重载无效 - 别在
~/.bashrc里export HTTP_PROXY:SSH non-interactive shell 不 source 它,vscode-server也完全不认
填了 http.proxy 却提示证书错误?关掉严格校验
很多本地代理(如 Charles、旧版 Fiddler、自建 mitmproxy)用的是自签名证书,VSCode 默认会拒绝连接,报错类似 DEPTH_ZERO_SELF_SIGNED_CERT 或直接空白页。
- 加一行
"http.proxyStrictSSL": false就能绕过证书校验(仅调试用,生产环境慎开) - Clash/Surge 等标准代理通常不需要这行,但开了也没坏处
- 如果用了企业中间人代理(如 Zscaler、Netskope),这行几乎是必配项
- 别指望靠系统证书信任链解决——VSCode 不走系统根证书库,它用的是 Electron 内置的证书列表
真正容易被忽略的是:VSCode 的代理设置和镜像源设置(extensions.gallery.serviceUrl)可以共存,但优先级不同——前者管「网络通路」,后者管「下载地址」。网络不通时换源没用;网络通了但源域名被污染或响应慢,光配代理也不够快。两者得一起调。

















