运行老版本的项目时 报错 Error: error:0308010C:digital envelope routines::unsupported 的问题解决

这篇具有很好参考价值的文章主要介绍了运行老版本的项目时 报错 Error: error:0308010C:digital envelope routines::unsupported 的问题解决。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

环境

Node.js :v18.12.1

开发工具:VsCode

运行项目报错如下:

//报错主要提示,第一行。
Error: error:0308010C:digital envelope routines::unsupported  
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:133:10)
    at BulkUpdateDecorator.hashFactory (D:\editingPro\isc-web-dev-jiangsu\node_modules\webpack\lib\util\createHash.js:145:18)
    at BulkUpdateDecorator.update (D:\editingPro\isc-web-dev-jiangsu\node_modules\webpack\lib\util\createHash.js:46:50)    at OriginalSource.updateHash (D:\editingPro\isc-web-dev-jiangsu\node_modules\webpack\node_modules\webpack-sources\lib\OriginalSource.js:131:8)
    at NormalModule._initBuildHash (D:\editingPro\isc-web-dev-jiangsu\node_modules\webpack\lib\NormalModule.js:888:17) 
    at handleParseResult (D:\editingPro\isc-web-dev-jiangsu\node_modules\webpack\lib\NormalModule.js:954:10)
    at D:\editingPro\isc-web-dev-jiangsu\node_modules\webpack\lib\NormalModule.js:1048:4
    at processResult (D:\editingPro\isc-web-dev-jiangsu\node_modules\webpack\lib\NormalModule.js:763:11)
    at D:editingPro\isc-web-dev-jiangsu\node_modules\webpack\lib\NormalModule.js:827:5 {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',

Node.js v18.12.1   //当前版本号。

原因

Node.js 的版本太高,在 Node.js V17 版本中发布的 OpenSSl3.0 对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成影响。

node -v    //cmd进入命令行输入命令,查看自己的版本号

解决方法:

永久解决问题:

第一:命令行输入

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

第二:主动降低 Node.js 的版本。

node.js 修改为不高于 16 的版本

这个方法不推荐,因为在实际开发中,要求每一个开发人员都因为一个项目而降低版本不合理,有的开发人员有多个项目,会连锁反应。在这里不做细节介绍了。

用环境变量临时解决:(命令行输入一定要用管理员模式才可以哟)

第一:windows 环境 不要在开发工具的终端输入!

在命令行输入:  输入完成之后重新启动项目即可

set NODE_OPTIONS=--openssl-legacy-provider 

第二: Linux 或者 WSL 环境 不要在开发工具的终端输入!文章来源地址https://www.toymoban.com/news/detail-518804.html

export NODE_OPTIONS=--openssl-legacy-provider

到了这里,关于运行老版本的项目时 报错 Error: error:0308010C:digital envelope routines::unsupported 的问题解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue2/3 - 解决报错 error:0308010C:digital envelope routines::unsupported(vue项目运行run或打包build时浏览器控制台报错,详细解决

    在vue2、vue3项目中,报错:error:0308010C:digital envelope routines::unsupported。vue运行编译时、上线打包后出现大概率会出现这个错误,很奇怪的报错。 其他解决教程几乎无效,本博客可完美搞定这个问题。 首先,这个错误

    2024年04月23日
    浏览(44)
  • Error: error:0308010C:digital envelope routines::unsupported问题的解决方案包括webstorm运行vue项目的解决方案

    原因:主要是nodejs17版本发布了OpenSSL3.0对算法和秘钥大小增加了更为严格的限制,npm升级导致了与OpenSSL不兼容导致的初始化失败,而我的电脑上的node.js是v18.16.0的,版本太高了。 先说我的配置: win10系统 node.js v18.16.0 npm 9.5.1 vue 2.7.14 vue-cli 2.9.6 四种解决方法: 一、卸载并

    2024年02月06日
    浏览(44)
  • Vue 报错Error: error:0308010C:digital envelope routines::unsupported

    Vue 报错Error: error:0308010C:digital envelope routines::unsupported 背景 我们经常在github上下载工程,但是有的工程有可能是2017,2016年或者更之前,导致工程的node版本,和自己电脑下载的node版本不兼容,导致报错。 报错原因 出现这个错误是因为 node.js 版本最近发布的OpenSSL3.0, 而OpenSSL3

    2024年02月11日
    浏览(52)
  • node版本问题:Error: error:0308010C:digital envelope routines::unsupported

    前言 出现这个错误是因为 node.js V17及以后版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响. 在node.js V17以前一些可以正常运行的的应用程序,但是在 V17 及以后版本可能会抛出以下异常:   我重装系统前,用的是V

    2024年02月07日
    浏览(59)
  • npm start报错Error: error:0308010C:digital envelope routines::unsupported

    (41条消息) npm run dev 报错:Error: error:0308010C:digital envelope routines::unsupported_爱的叹息的博客-CSDN博客  npm版本要和node版本对应(上文博主讲解很详细),所以要降低npm版本。但是我降低了以后还是报这个错。 error:0308010C:digital envelope routines::unsupported 出现这个错误是因为 node.js

    2024年02月15日
    浏览(50)
  • Vue 报错error:0308010C:digital envelope routines::unsupported

    这个错误与 OpenSSL 的版本兼容性问题有关,可能是 Vue.js 项目中使用的某个依赖或库需要使用 OpenSSL 的特定版本或功能,但你的系统上安装的 OpenSSL 版本不兼容。 要解决这个问题,你可以尝试以下几个步骤: 升级 OpenSSL:尝试升级系统上的 OpenSSL 版本,确保它与项目中使用的

    2024年02月02日
    浏览(39)
  • Vue 报错 error:0308010C:digital envelope routines::unsupported

    Vue 报错error:0308010C:digital envelope routines::unsupported 出现这个错误是因为 node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响. 方法1 打开终端(按健win+R弹出窗口,键盘输入cmd,然后敲回车)并按照说明粘贴这些

    2024年02月09日
    浏览(74)
  • Vue项目:Error: error:0308010C:digital envelope routines::unsupported

    Vue2+ElementUI脚手架项目,启动的时候报下列错误 第一感觉就是node版本的问题,因为本地node版本用的算是比较新的,用的18.8.2版本。经过查询相关资料,发现是node17以后OpenSSL3.0对允许算法和密钥大小增加了严格的限制,由此造成的影响。既然找到了问题解决办法无外乎使用低

    2024年03月21日
    浏览(90)
  • 若依vue前端 报错error:0308010C:digital envelope routines::unsupported

    大功告成, 然后 npm run dev自己试试吧. 参考帖子

    2024年02月06日
    浏览(43)
  • 【npm run dev 报错:error:0308010C:digital envelope routines::unsupported】

    问题原因: nodejs版本太高(nodejs v17版本发布了openSSL3.0对短发和密钥大小增加了更为严格的限制,nodejs v17之前版本没有影响,但之后的版本会出现这个错误,物品的node版本是20.9.0) 解决方式:(仅windows) 在 package.json 的 scripts 中新增 npm run dev重新启动即可

    2024年02月05日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包