node18 vue2启动报错 error:0308010C:digital envelope routines::unsupported

出现原因

貌似是因为是因为 node 17版本开始发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响。

解决方法

第一种方法降低node版本

降低到17以下即可 ,如项目不能降低版本 看后面的解决方式

第二种方法 设置NODE_OPTIONS环境变量

打开终端 这种只是临时设置变量 想永久设置

mac / linux设置方法

shell 复制代码
 export NODE_OPTIONS=--openssl-legacy-provider

打开cmd ,window设置方法

shell 复制代码
set NODE_OPTIONS=--openssl-legacy-provider

执行完以上命令后 再重新npm run dev 问题已解决。

第三种方法 package.json增加配置

在scripts 中dev加配置命令 set NODE_OPTIONS=--openssl-legacy-provider &&

shell 复制代码
"scripts": {
    "local": "set NODE_OPTIONS=--openssl-legacy-provider &&  vue-cli-service serve --mode local",
    "dev": "set NODE_OPTIONS=--openssl-legacy-provider &&  vue-cli-service serve --mode dev"
  },

以上三中方式随便选其中一种解决即可

相关推荐
RichardLau_Cx1 小时前
【保姆级实操】MediaPipe SDK/API 前端项目接入指南(Web版,可直接复制代码)
前端·vue·react·webassembly·mediapipe·手部追踪·前端计算机视觉
chao_7897 小时前
双设备全栈开发最佳实践[mac系统]
git·python·macos·docker·vue·全栈
码农幻想梦7 小时前
Vue3入门到实战【尚硅谷】
前端·vue
吃茄子的猫7 小时前
若依框架根据当前登录人信息,显示不同的静态公司logo
前端·vue
千寻技术帮1 天前
10386_基于SpringBoot的外卖点餐管理系统
java·spring boot·vue·外卖点餐
东东5163 天前
xxx医患档案管理系统
java·spring boot·vue·毕业设计·智慧城市
码界奇点3 天前
基于Spring Boot和Vue3的无头内容管理系统设计与实现
java·spring boot·后端·vue·毕业设计·源代码管理
东东5163 天前
基于Web的智慧城市实验室系统设计与实现vue + ssm
java·前端·人工智能·后端·vue·毕业设计·智慧城市
27669582923 天前
美团 小程序 mtgsig
python·小程序·node·js·mtgsig1.2·美团小程序·大众点评小程序
不甘平凡的小鸟3 天前
vue3与cef3交互
前端·vue·cef3