从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
:
"scripts": {
"dev": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
}
或者在 Linux 或 macOS 系统中,使用以下命令:
"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 错误。文章来源:https://www.toymoban.com/news/detail-674349.html
不过这只是一个临时解决方案, 可能随着Node.js 和 OpenSSL 的更新,问题可能会得到修复。文章来源地址https://www.toymoban.com/news/detail-674349.html
到了这里,关于Node opensslErrorStack 错误解决方法记录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!