【那些年踩过的坑-前端篇- Mac版本】npm init vite 失败,报错`CERT_HAS_EXPIRED npm ERR

CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED npm ERR! request to htt

开发中vue3项目执行npm init vite 命令报错了,vite 需要node.js版本>= 12.0.0

bash 复制代码
beiluo@beiluodeMBP vue3-demo % node -v
v16.13.0
beiluo@beiluodeMBP vue3-demo % npm init vite
npm ERR! code CERT_HAS_EXPIRED
npm ERR! errno CERT_HAS_EXPIRED
npm ERR! request to https://registry.npm.taobao.org/create-vite failed, reason: certificate has expired

npm ERR! A complete log of this run can be found in:`
npm ERR!     /Users/beiluo/.npm/_logs/2024-10-31T15_06_17_487Z-debug.log

CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED npm ERR! request to htt

报错解释:

这个错误通常表示你的计算机无法验证SSL证书的有效性,因为证书已经过期。这可能是因为你的系统时间不正确,或者是因为你的Node.js环境中的证书库过时。

解决方法:(我是使用了清除缓存好了)

1、清除npm缓存

bash 复制代码
npm cache clean --force

2、检查系统时间:

确保你的计算机的日期和时间是正确的。错误的系统时间可能会导致SSL证书验证失败。

3、更新Node.js:

如果你使用的是较旧版本的Node.js,尝试更新到最新稳定版本。

mac更新方法参考我的文章:【那些年踩过的坑-前端篇- Mac版本】Mac电脑如何升级node.js

4、更新操作系统:

确保你的操作系统是最新的,因为它可能包含最新的证书更新。

bash 复制代码
   npm install -g npm@latest

5、 使用环境变量跳过SSL验证(不推荐,仅作为临时解决方案):

bash 复制代码
   npm set strict-ssl=false

mac路径:~/.npmrc

Windows路径:C:\Users.npmrc

这会让npm忽略SSL证书错误,但会降低你的网络安全性。

确保在解决问题后重新启用strict-ssl,或者使用更安全的方式处理证书问题。

6、手动设置registry

尝试手动设置registry为淘宝镜像或者其他镜像源,如下

查看自己的下载源

bash 复制代码
npm config get registry

发现我们之前配置了下载镜像源为https开头的,

bash 复制代码
https://registry.npm.taobao.org/

执行命令清除npm缓存

bash 复制代码
npm cache clean --force

执行命令取消ssl验证

bash 复制代码
npm config set strict-ssl false

再次执行npm install ***,还不行可以尝试设置你的npm镜像源为http开头的,不使用https

bash 复制代码
npm config set registry http://registry.npm.taobao.org

最新的淘宝镜像

bash 复制代码
npm config set registry https://registry.npmmirror.com/
相关推荐
duandashuaige2 天前
解决用electron打包Vue工程(Vite)报错electron : Failed to load URL : xxx... with error : ERR _CONNECTION_REFUSED
javascript·typescript·electron·npm·vue·html
weixin_405023373 天前
包资源管理器NPM 使用
前端·npm·node.js
小于小于09123 天前
npx 与 npm 区别
前端·npm·node.js
亮子AI4 天前
【npm】npm install 产生软件包冲突怎么办?(详细步骤)
前端·npm·node.js
Rhys..5 天前
JS - npm init
开发语言·javascript·npm
夏天想5 天前
复制了一个vue的项目然后再这个基础上修改。可是通过npm run dev运行之前的老项目,发现运行的竟然是拷贝后的项目。为什么会这样?
前端·vue.js·npm
一枚前端小能手6 天前
📦 从npm到yarn到pnpm的演进之路 - 包管理器实现原理深度解析
前端·javascript·npm
scorpion_V7 天前
VScode 中执行 npm 报错的问题
ide·vscode·npm
FreeBuf_7 天前
攻击者利用Discord Webhook通过npm、PyPI和Ruby软件包构建隐蔽C2通道
前端·npm·ruby
程序铺子8 天前
如何使用 npm 安装 sqlite3 和 canvas 这些包
javascript·npm·node.js