解决npm设置registry.npmmirror.com仍报错registry.npm.taobao.org的问题


早上打算运行电脑里面一个许久没动过的项目,在输入 npm install 时报了一个错

npm ERR! code CERT_HAS_EXPIRED
npm ERR! request to https://registry.npm.taobao.org/yorkie/download/yorkie-2.0.0.tgz failed, reason: certificate has expired

https://registry.npm.taobao.org 过期了

But

🤔 我记着我设置的是 https://registry.npmmirror.com/

> npm config get registry
https://registry.npmmirror.com/

尝试 npm config set strict-ssl false

> npm config set strict-ssl false
> npm cache clear --force
> npm install
... // 省略过程
added 1560 packages in 5m
17 packages are looking for funding

😀 嘿嘿成了

不过 npm config set strict-ssl false 是什么意思呢

查了一下,strict-sslnpm 中用于控制 SSL 证书校验的选项,当其为 true 时,npm 会对连接的服务器的 SSL 证书进行严格的校验,并要求它是由可信的认证机构颁发的。如果校验失败,npm 将无法连接到服务器并会报错;当其为 false 时,则 npm 将不会对服务器的 SSL 证书进行校验,并且即使证书是由不可信的认证机构颁发的也不会报错,这就存在一定的安全风险,所以问题解决完了还是赶紧设置回去吧

> npm config set strict-ssl true

2024.05.09 更新
这次是用 yarn 遇到这个问题啦,把项目中的 yarn.lock 文件删掉再 yarn install 就好了


文章作者: April-cl
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 April-cl !
  目录