描述
在终端使用npm指令运行项目时报错error:0308010C:digital envelope routines::unsupported
原因
出现这个错误是因为 node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响.
解决方法
- 卸载当前node17.0+
- 重新安装低于17.0的版本
推荐
推荐直接卸载node,然后安装nvm
node版本管理工具,还可以安装nrm
,方便切换源。
如果已经安装了nrm
。
- 可以执行
nvm ls
查看可以安装的node版本
- 使用
nvm install xxx
来安装指定版本的node。如nvm install 16.19.0
。
- 使用
nvm use xxxx
来指定要使用的node版本。如nvm use 16.19.0