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

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

相关推荐
一个很帅的帅哥14 小时前
实现浏览器的下拉加载功能(类似知乎)
开发语言·javascript·mysql·mongodb·node.js·vue·express
孟诸16 小时前
计算机专业毕设-校园新闻网站
java·vue·毕业设计·springboot·课程设计
Sca_杰1 天前
vue2使用npm引入依赖(例如axios),报错Module parse failed: Unexpected token解决方案
前端·javascript·vue
会有黎明吗2 天前
完整版订单超时自动取消功能
java·vue·rabbitmq
andy7_2 天前
多版本node管理工具nvm
vue
1234Wu2 天前
高德地图2.0 绘制、编辑多边形覆盖物(电子围栏)
前端·vue
码力码力我爱你3 天前
Vue Application exit (SharedArrayBuffer is not defined)
linux·前端·javascript·qt·vue·wasm·webassembly
飞翔的佩奇3 天前
Java项目: 基于SpringBoot+mybatis+maven洗衣店订单管理系统(含源码+数据库+开题报告+任务书+毕业论文)
java·spring boot·vue·毕业设计·maven·mybatis·洗衣店
doc_wei3 天前
Java汽车销售管理
开发语言·spring boot·vue·汽车·毕业设计·intellij-idea·课程设计
蓝染-惣右介4 天前
【若依RuoYi-Vue | 项目实战】帝可得后台管理系统(一)
java·后端·物联网·vue·springboot