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"
      },

    这样直接就可以运行了

相关推荐
ssshooter1 小时前
Tauri 项目实践:客户端与 Web 端的授权登录实现方案
前端·后端·rust
兆子龙1 小时前
【React】19 深度解析:掌握新一代 React 特性
前端·架构
Moment1 小时前
MinIO已死,MinIO万岁
前端·后端·github
无双_Joney2 小时前
心路散文 - 转职遇到AI浪潮,AIGC时刻人的价值是什么?
前端·后端·架构
有意义2 小时前
深度拆解分割等和子集:一维DP数组与倒序遍历的本质
前端·算法·面试
卤蛋fg62 小时前
vxe-table 如何实现分组列头折叠列功能
vue.js
小怪点点2 小时前
vue3使用
前端·vue.js
进击的尘埃2 小时前
Vitest 自定义 Reporter 与覆盖率卡口:在 Monorepo 里搞增量覆盖率检测
javascript
进击的尘埃2 小时前
E2E 测试里的网络层,到底该怎么 Mock?
javascript
Bigger3 小时前
CSS 这些年都经历了什么?一次看懂 CSS 的演化史
前端·css·前端工程化