Nodejs 运行前端项目时,报错:Error: error:0308010C:digital envelope routines::unsupported。原因是 node 版本过高

在使用 npm run start 运行前端项目时,突然出现了报错:

错误信息

Error: error:0308010C:digital envelope routines::unsupported
在这里插入图片描述

问题原因

通过百度打发,发现是 node 版本问题导致的报错。

因为 node.js V17 版本中发布的 OpenSSL3.0, 而 OpenSSL3.0 对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响。故此以前的项目在升级 nodejs 版本后会报错。

解决方案

切换 node 版本为 17 以下的版本,我这里是使用 nvm 管理 node 版本,也可以使用其他方案降低node的版本。

  • 查看当前版本为 19+,过高
  • 使用 nvm ls 查看已经安装的 node 版本,刚好有 16的
  • 使用 16.16.0 的 node 之后再进行启动项目,即成功
    在这里插入图片描述
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值