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

运行npx react-native start报ERR_OSSL_EVP_UNSUPPORTED如何解决?

错误根因

你遇到的ERR_OSSL_EVP_UNSUPPORTED报错是Node.js v17及以上版本内置的OpenSSL 3.0默认禁用了MD4等旧版哈希算法,而你当前项目依赖的旧版Metro(React Native官方打包工具)的哈希计算逻辑还在使用已经被废弃的MD4算法导致的。

解决方案

  • 方案1:临时添加环境变量启动(适合临时测试,不用改项目配置)
    不同操作系统的命令不同:
    • Windows CMD环境运行:set NODE_OPTIONS=--openssl-legacy-provider && npx react-native start
    • Windows PowerShell环境运行:$env:NODE_OPTIONS="--openssl-legacy-provider"; npx react-native start
    • macOS/Linux终端运行:NODE_OPTIONS=--openssl-legacy-provider npx react-native start
  • 方案2:修改项目package.json配置(一劳永逸,项目内所有人生效)
    打开项目根目录的package.json文件,找到scripts下的start配置,修改为:
    "scripts": {
      "start": "NODE_OPTIONS=--openssl-legacy-provider react-native start",
      // 其他原有脚本保持不变
    }
    
    如果需要兼容多操作系统,可以先安装跨平台环境变量工具:npm install cross-env --save-dev,再把start脚本改成"start": "cross-env NODE_OPTIONS=--openssl-legacy-provider react-native start"
  • 方案3:降级Node.js到16.x LTS版本(最稳妥,无后续兼容风险)
    如果你不想修改项目配置,也可以直接将Node.js版本降级到16.x的长期支持版本,这个版本的OpenSSL没有禁用旧哈希算法,完全兼容旧版React Native的Metro打包工具。

内容的提问来源于stack exchange,提问作者Anupam Kumar Krishnan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 11:15:04