nvm 安装失败?raw.githubusercontent.com 连接超时解决方案
昨天想在新电脑上装一下 Node.js,顺手就用了 nvm(Node Version Manager)来管理版本,结果执行官方安装命令就报错了:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
然后直接给我抛了个错误:
curl: (7) Failed to connect to raw.githubusercontent.com port 443 after 6 ms: Couldn't connect to server
看到这个错误我其实一点都不意外,因为 raw.githubusercontent.com 在国内访问经常不太稳定。很多人第一次装 nvm 都会遇到这个问题,尤其是网络环境不太好的时候。
先说说为什么会报这个错
这个错误的核心原因就是 raw.githubusercontent.com 这个域名被墙了或者 DNS 解析有问题。nvm 的安装脚本托管在 GitHub 的 raw 仓库上,我们用 curl 去下载的时候,需要连接到这个域名的 443 端口(HTTPS),但因为网络问题根本连不上。
解决方案一:使用代理(推荐)
如果你有代理或者科学上网的环境,直接让 curl 走代理就行了:
# 设置代理地址(改成你自己的代理地址和端口)
export https_proxy=http://127.0.0.1:7890
export http_proxy=http://127.0.0.1:7890
# 然后重新执行安装命令
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
执行完别忘了重新加载一下配置文件:
source ~/.bashrc
# 或者如果你用的是 zsh
source ~/.zshrc
解决方案二:手动下载安装脚本
如果你没有代理,可以手动去下载安装脚本。方法有好几种:
1. 打开浏览器下载
直接用浏览器打开这个链接(如果浏览器能科学上网的话):
https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh
把文件保存下来,假设存到了 ~/install.sh,然后执行:
bash ~/install.sh
2. 用国内镜像下载
GitHub 有一些国内镜像站可以用,比如:
# 使用 ghproxy 镜像
curl -o- https://ghproxy.com/https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
解决方案三:使用其他安装方式
如果上面方法都不行,也可以试试用 git 安装:
# 克隆 nvm 仓库到本地
git clone https://github.com/nvm-sh/nvm.git ~/.nvm
# 切换到最新版本
cd ~/.nvm
git checkout v0.39.7
然后在你的 shell 配置文件里(比如 ~/.bashrc 或 ~/.zshrc)加上这两行:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
保存后重新加载配置:
source ~/.bashrc
最后验证一下
安装完成后,用这个命令验证一下:
nvm --version
如果能看到版本号,就说明安装成功了。然后你就可以愉快地安装 Node.js 了:
# 安装最新 LTS 版本
nvm install --lts
# 列出已安装的版本
nvm ls
总结一下
nvm 安装失败大多是网络问题导致的,核心就是那行 curl: (7) Failed to connect to raw.githubusercontent.com 错误。根据你的网络情况选择合适的解决方案就行:
- 有代理就配置代理让 curl 走代理
- 没代理就手动下载安装脚本或者用国内镜像
- 实在不行就用 git 克隆仓库安装
希望这篇对你有帮助,有问题评论区交流哈!