You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

npm启动报ERR_OSSL_EVP_UNSUPPORTED,Node版本显示不一致且未装对应版本

解决npm start报错ERR_OSSL_EVP_UNSUPPORTED且Node版本显示不一致的问题

1. 先查npm实际调用的Node版本

执行以下命令,确认npm用的Node版本是否和全局的20.9.0一致:

npm exec which node
npm config get node_version

如果输出是21.2.0,说明npm绑定了其他版本的Node,并非你全局的20.9.0。

2. 强制npm使用全局Node版本+修复openssl错误

  • 先把npm的Node版本配置改成20.9.0:
npm config set node_version 20.9.0
  • 针对openssl兼容问题,修改启动命令:
    React项目直接改package.json里的start脚本:
    "start": "react-scripts start --openssl-legacy-provider"
    
    普通Node项目改成:
    "start": "node --openssl-legacy-provider ./your-entry-file.js"
    
    或者临时启动时直接加参数:
    npm start -- --openssl-legacy-provider
    

3. 清理缓存并重装依赖

如果上面的操作没效果,清掉缓存和本地依赖再试:

npm cache clean --force
rm -rf node_modules package-lock.json
npm install

4. 检查版本管理器残留

如果用了nvm、volta这类工具:

  • 查看项目根目录有没有.nvmrc、.volta文件,里面可能指定了21.2.0,直接删掉或者改成20.9.0
  • 用nvm的话,执行nvm current看当前版本,不对就切换:
nvm use 20.9.0
  • 检查系统PATH,确保20.9.0的Node路径排在最前面,删掉其他可能存在的21.2.0路径

5. 验证修复结果

重新执行npm start,查看错误信息里的Node版本是否变为20.9.0,同时确认openssl错误是否消失。

内容的提问来源于stack exchange,提问作者vish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 02:35:20