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

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

相关推荐
空中海7 小时前
第五章:Pinia 状态管理
vue
Sheldon一蓑烟雨任平生19 小时前
Vite 深度剖析(一)
vue·react·vite·环境变量·esbuild·vite.config.ts·依赖预构建
zhz521419 小时前
一个简单、轻量级且安全的离线GIS 系统架构设计
安全·系统架构·vue·gis·fastapi
旷世奇才李先生1 天前
Vue3\+Pinia实战:企业级后台管理系统开发(附权限控制)
vue
空中海2 天前
Vue 全栈开发知识体系
vue
吴声子夜歌3 天前
Vue3——Vuex状态管理
前端·vue.js·vue·es6
sp42a4 天前
NativeScript ListView 实现固定分区标题
vue·nativescript
双普拉斯4 天前
打造工业级全栈文件管理器:深度解析上传、回收站与三重下载流控技术
spring·vue·js
码界筑梦坊5 天前
356-基于Python的网易新闻数据分析系统
python·mysql·信息可视化·数据分析·django·vue·毕业设计
吴声子夜歌5 天前
Vue3——渲染函数
前端·vue.js·vue·es6