Node opensslErrorStack 错误解决方法记录

从Git仓库中下载了一个老项目,使用npm install 安装后没有问题,当我使用npm run dev 的时候遇到了 OpenSSL 相关错误,例如 opensslErrorStack: ['error:03000086:digital envelope routines::initialization error']

网上找了一下相关信息,然后顺利解决了,记录分享给大家

问题原因:

这种错误通常与 Node.js 版本和 OpenSSL 版本之间的兼容性问题有关。某些 Node.js 版本可能与特定版本的 OpenSSL 不兼容,导致加密或安全相关的功能出现问题。

解决方案:

首先,确认你 Node.js 和 OpenSSL 版本。可以通过以下命令查看版本:

复制代码
node -v
openssl version

如果发现 Node.js 版本与 OpenSSL 版本存在兼容性问题,可以尝试以下解决方案:

在你的项目的 package.json 文件中的 scripts 部分,添加一个新的脚本,比如 dev

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

或者在 Linux 或 macOS 系统中,使用以下命令:

json 复制代码
"scripts": {
  "dev": "export NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve", 
}

这里的 dev 是你实际的启动脚本名称。

保存 package.json 文件。

在终端或命令提示符中,导航到项目目录。

运行以下命令,以确保所有依赖项都已安装:

复制代码
npm install

运行以下命令来启动你的应用程序:

复制代码
npm start

通过添加 NODE_OPTIONS=--openssl-legacy-provider 到启动脚本中, 这其实是设置了一个环境变量,以使用旧版本的 OpenSSL 提供程序,可能可以解决特定的 OpenSSL 错误。

不过这只是一个临时解决方案, 可能随着Node.js 和 OpenSSL 的更新,问题可能会得到修复。

相关推荐
八角丶13 小时前
Node 网络编程 —— TLS 模块
javascript·后端·node.js
嘿嘿-6617 小时前
Cherry Studio 接入ChatGpt:GPT-5.6 Sol 文本测试与 GPT-Image-2 出图教程
人工智能·gpt·ai·chatgpt·node.js·ai编程
大牧师17 小时前
TypeORM 学习教程
数据库·sql·学习·node.js·orm·nest.js·typeorm
逻辑019 小时前
安装 Claude Code 完整指南(用户级 Node.js 环境)
node.js·claude code
Wang's Blog19 小时前
Vibe Coding一人即团队系列54:云服务器 Node.js 与 MySQL 9 环境搭建及配置指南
服务器·人工智能·mysql·node.js
FungLeo20 小时前
成为全栈·Node 后端篇·结构化日志与请求链路追踪
node.js·结构化日志·成为全栈·请求链路
Flynt1 天前
NestJS 12升级踩坑:从Webpack到Rspack,我折腾了一整个周末
typescript·node.js·nestjs
FungLeo2 天前
成为全栈·Node 后端篇·配置管理:环境变量、多环境与密钥安全
node.js·环境变量·多环境配置·密钥安全
FungLeo2 天前
成为全栈·Node 后端篇·错误处理:异常分层与全局捕获
node.js·错误处理·异常分层·全局捕获·成为全栈
瓦格哈儿2 天前
删掉旧 SSL 证书会影响线上业务吗?风险点梳理
网络协议·https·ssl