Error: error:0308010C:digital envelope routines::unsupported

vue 项目启动或打包时报错:ERROR Error: error:0308010C:digital envelope routines::unsupported

Error: error:0308010C:digital envelope routines::unsupported

这个错误通常发生在Node.js的版本升级到17或更高版本后,因为这些版本开始使用OpenSSL 3.0,它对算法和密钥大小施加了更严格的限制。

解决方案:在运行构建脚本之前,可以通过设置环境变量NODE_OPTIONS来指定使用OpenSSL的旧版提供程序。这可以通过修改package.json文件中的scripts部分来实现

  • 可以在cmd中运行:

    bash 复制代码
    E:\项目>SET NODE_OPTIONS=--openssl-legacy-provider

然后在 启动 或 打包 就可以了!

  • 修改 package.json 文件中的 scripts:在dev和build后添加 SET NODE_OPTIONS=--openssl-legacy-provider &&

    javascript 复制代码
    "scripts": {
        "dev": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
        "build": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build"
      },

    这样直接就可以运行了

相关推荐
朝阳58118 分钟前
控制 Nuxt 页面的渲染模式:客户端 vs 服务端渲染
前端·javascript
发现一只大呆瓜24 分钟前
Vue-Vue2与Vue3核心差异与进化
前端·vue.js·面试
sunny_31 分钟前
熬夜通宵读完 VitePlus 全部源码,我后悔没早点看
前端·前端框架·前端工程化
发现一只大呆瓜1 小时前
Vue2:数组/对象操作避坑大全
前端·vue.js·面试
发现一只大呆瓜1 小时前
Vue3:ref 与 reactive 超全对比
前端·vue.js·面试
lzksword1 小时前
C++ Builder XE OpenDialog1打开多文件并显示xls与xlsx二种格式文件
java·前端·c++
陈随易1 小时前
站在普通开发者的角度,我觉得 RollCode 更像是“把 H5 交付这件事重新捋顺了”
前端·后端·程序员
陈随易1 小时前
RollCode:不只是在做页面,而是在缩短“从需求到上线”的整条链路
前端·后端
炽烈小老头2 小时前
【每天学习一点算法 2026/03/17】括号生成
前端·学习·typescript
大漠_w3cpluscom2 小时前
如何在 CSS 中正确使用 if()
前端