1 问题描述
- 使用npm命令安装相关依赖报错:
npm ERR! code CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED npm ERR! request to https://registry.npm.taobao.org/@vue%2fcli failed, reason: certificate has expired
- 报错示例图如下所示:
2原因分析
- SSL证书已过期导致npm命令失败的问题。
- 通常是因为证书过期或不再受信任而引起的。
- 解决此问题的方法是更新或修复npm的SSL证书。(或者在npm配置中禁用严格的SSL验证)
3 解决方案
方案一:更新或修复npm的SSL证书。
1、清除npm缓存:
npm cache clean --force
2、删除旧的SSL证书文件:
在用户目录下找到.npmrc文件,并删除其中的ca、cafile或cafile[]等配置。
3、更新npm:
npm install -g npm
4、将npm registry更改为另一个镜像源,例如使用华为云镜像:(本人现在使用的淘宝镜像不太行……怀疑就是新年2024年淘宝镜像没更新时间证书,导致报错)
npm config set registry https://mirrors.huaweicloud.com/repository/npm/
5、再次尝试安装操作
方案二:在npm配置中禁用严格的SSL验证–推荐尝试
```javascript
npm cache clean --force
npm config set strict-ssl false
npm install
```
- 安装效果示例如下图: