高版本node启动RuoYi-Vue若依前端ruoyi-ui

在使用Node.js时,如果版本过高,特别是Node.js 17及以上版本,会出现vue-cli项目运行报错的问题。这是因为Node.js 17引入了OpenSSL 3.0,该版本不再支持md4算法,而在此之前,Node.js中的md4方法是可以正常使用的。在Node.js 17及更高版本中,如果继续使用md4,会抛出错误代码ERR_OSSL_EVP_UNSUPPORTED。

方法一:设置启动命令

在启动项目之前,运行以下配置命令:

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

此命令的作用是告诉Node.js使用旧版的OpenSSL库,避免使用OpenSSL 3.0,从而规避错误的发生。

方法二:修改package.json配置

通过修改package.json文件,可以将上述命令直接添加到项目的启动脚本中。具体配置如下:

javascript 复制代码
"dev":"set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --open",

"build:prod":"set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build --report",

"build:stage":"set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build --mode staging",

"preview":"set NODE_OPTIONS=--openssl-legacy-provider && node build/index.js --preview",

这样,每次启动或打包项目时,都会自动使用旧版OpenSSL。

方法三:降级Node.js版本

如果以上两种方法不适用,还可以将Node.js降级到16版本或更低版本。Node.js 16及以下版本不包含OpenSSL 3.0,因此不会出现md4不支持的问题,项目也可以正常运行。

相关推荐
子兮曰4 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰4 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万4 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝4 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
A黄俊辉A4 天前
uniapp webview中实现 app和内嵌的H5双向通信
vue.js·json
三十而立洋4 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁4 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
李少兄4 天前
JavaScript 隐式全局变量解析
javascript
honkun64 天前
vue 表格组件 vxe-table 配置 ajax 请求自动加载数据与表单查询
vue.js·vxe-table
kybs19914 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net