错误代码 ERR_OSSL_EVP_UNSUPPORTED

目录

1.问题原因

2.错误描述

3.解决办法


1.问题原因

升级了Node.js v17+ 版本出现的问题。

2.错误描述

升级了node.js 版本到 v17.9.1,出现如下错误:

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:67:19)
    at Object.createHash (node:crypto:135:10)
    at module.exports (H:\iWork\产品代码\前端代码\ui_1\node_modules\webpack\lib\util\createHash.js:135:53)
    at NormalModule._initBuildHash (H:\iWork\产品代码\前端代码\ui_1\node_modules\webpack\lib\NormalModule.js:417:16)
    at handleParseError (H:\iWork\产品代码\前端代码\ui_1\node_modules\webpack\lib\NormalModule.js:471:10)
    at H:\iWork\产品代码\前端代码\ui_1\node_modules\webpack\lib\NormalModule.js:503:5
    at H:\iWork\产品代码\前端代码\ui_1\node_modules\webpack\lib\NormalModule.js:358:12
    at H:\iWork\产品代码\前端代码\ui_1\node_modules\loader-runner\lib\LoaderRunner.js:373:3
    at Storage.finished (H:\iWork\产品代码\前端代码\ui_1\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)
    at H:\iWork\产品代码\前端代码\ui_1\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9
    at H:\iWork\产品代码\前端代码\ui_1\node_modules\graceful-fs\graceful-fs.js:123:16
    at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

3.解决办法

如果使用的是 visual studio code,在终端处输入

windows 输入

$env:NODE_OPTIONS="--openssl-legacy-provider" 
或
set NODE_OPTIONS=--openssl-legacy-provider

补充:
在终端输入一次只能本次生效,如果想永久生效可以在 package.json 文件中修改对应的 scripts 节点的内容如下:

"serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
"build": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",

linux 输入 

export NODE_OPTIONS=--openssl-legacy-provider

最直接的办法

将 node.js 版本降到 v16+

  • 33
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值