|
问题:
在使用nodejs项目时,使用npm i 命令下载时,报错: npm WARN old lockfile FetchError: request to https://registry.npm.taobao.org/on-headers failed, reason: certificate has expired npm WARN old lockfile code: 'CERT_HAS_EXPIRED', npm WARN old lockfile errno: 'CERT_HAS_EXPIRED', npm WARN old lockfile type: 'system' 最后定位在了CERT_HAS_EXPIRED这个错误代码上。 原因: 遇到CERT_HAS_EXPIRED错误通常意味着尝试连接的服务器的SSL证书已过期。这个问题可能出现在你使用的npm镜像上(我用的是淘宝镜像) 解决方案: 方法1:临时忽略SSL证书验证 作为临时解决方案,你可以通过设置npm配置来忽略SSL证书验证。请注意,这种方法会降低安全性,不推荐作为长期解决方案。 npm config set strict-ssl false 安装完所需的包后,最好将此设置还原,以保持更高的安全性: npm config set strict-ssl true 方法2:更新npm和Node.js 确保你的npm和Node.js版本是最新的。过时的版本可能不会正确处理SSL证书。可以通过下面的命令更新npm和Node.js: 更新npm: npm install -g npm@latest 更新Node.js:访问Node.js官网下载并安装最新版本。 方法3:更换npm镜像源 如果问题是由特定镜像源的证书问题导致的,尝试更换到官方npm镜像源或其他镜像源: 切换到npm官方镜像源: npm config set registry https://registry.npmjs.org/ 或者,使用其他可用的镜像源,例如华为云镜像源: npm config set registry https://mirrors.huaweicloud.com/repository/npm/ 参考:https://blog.csdn.net/weixin_50503886/article/details/136177499 |
|
|