此问题出现在Ubuntu20.04上的更新
sudo apt upgrade
之后。以前,我在版本节点v18.0.0和npm8.7.0上工作,但是在更新之后出现了一个问题,我运行了命令
nvm install node --reinstall-packages-from=node
,但是它没有帮助。现在我使用NPMv8.12.1,节点v18.4.0。在运行命令
npm start
时,我收到消息:
> mini-app@0.0.0 start
> cross-env PORT=10888 HTTPS=false react-scripts start --openssl-legacy-provider
node: --openssl-legacy-provider is not allowed in NODE_OPTIONS
文件
package.json
的一部分如下所示:
"scripts": {
"start": "cross-env PORT=10888 HTTPS=false react-scripts start --openssl-legacy-provider",
"build": "react-scripts build",
"predeploy": "npm run build",
"deploy": "vk-miniapps-deploy",
"tunnel": "vk-tunnel --insecure=1 --http-protocol=https --ws-protocol=wss --host=localhost --port=10888"
},
我回到了NPM8.7.0版本,
npm install -g npm@8.7.0
,但是现在即使节点版本的输出也显示了相同的错误:
node -v
node: --openssl-legacy-provider is not allowed in NODE_OPTIONS
试图更新:
nvm install 12.13.0
v12.13.0 is already installed.
Now using node v12.13.0 (npm v)
发布于 2022-07-07 20:33:41
您可以尝试对NODE_OPTIONS生产变量执行未设置的设置。这可以通过命令行完成。
您的Node版本似乎已经是最新的(版本18)。一个类似的问题已经得到了处理,并根据下面的Github链接解决了: https://github.com/microsoft/vscode/issues/136599
希望对以上资源的提示有所帮助!你好,彼得
发布于 2022-08-28 15:06:01
我在MacOS上碰到了这个。在终端中,我运行
export
来检查我的环境变量,并看到
NODE_OPTIONS=--openssl-legacy-provider
已经被设置。然后我只运行
unset NODE_OPTIONS
,然后能够再次使用节点。
发布于 2022-07-21 10:41:02
在Linux上,您需要编辑您的
/etc/ssl/openssl.cnf
以取消注释,这些行将支持遗留提供程序支持。
我现在是36岁的Fedora,我不得不改变这些台词:
##[provider_sect]
##default = default_sect
##legacy = legacy_sect
##[default_sect]
##activate = 1
##[legacy_sect]
##activate = 1
至:
[provider_sect]
default = default_sect
legacy = legacy_sect