我正在使用 nvm 来管理我的节点版本。我有一个用户节点 6.10.2 的项目。像npm install -g gulp我收到以下错误一样简单:
write EPROTO 101057795:error:1408D07B:SSL routines:ssl3_get_key_exchange:bad signature:openssl\ssl\s3_clnt.c:20
Run Code Online (Sandbox Code Playgroud)
我在我的配置中添加了 strict-ssl false ,但没有帮助。我不是在代理后面,我已经在我的公司防火墙、家庭网络甚至我的移动热点后面尝试过,但都出现了同样的错误。我改为使用 http:// 而不是 https:// usingnpm config set registry http://registry.npmjs.org/这让我克服了 gulp 错误,但随后使用其他软件包返回错误(大概是因为它们是从不同的注册表中提取的)。无论如何,使用 http:// 让我担心安全性。
我在节点 6.10.2 和 7.4.0 上得到了相同的结果。如果我跳转到最新的节点 12.18.0,错误不会发生,但我正在处理的项目不支持新的节点版本。不知道还有什么可以尝试的。
这是 npm-debug.log 文件的错误部分:
103 verbose stack Error: write EPROTO 101057795:error:1408D07B:SSL routines:ssl3_get_key_exchange:bad signature:openssl\ssl\s3_clnt.c:2032:
103 verbose stack
103 verbose stack at exports._errnoException (util.js:1018:11)
103 verbose stack at WriteWrap.afterWrite (net.js:804:14)
104 verbose cwd C:\code\extraspace.web.pointofsale
105 error Windows_NT 10.0.18363
106 error argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program …Run Code Online (Sandbox Code Playgroud)