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

执行npm start启动React项目时遇digital envelope routines错误求助

解决React项目npm start时的ERR_OSSL_EVP_UNSUPPORTED错误

这个错误是因为Node.js 17+版本默认启用了OpenSSL 3.0的安全标准,而旧版react-scripts依赖的webpack使用了不再被支持的哈希算法导致的。以下是几种可行的解决方法:

方法一:临时启动(快速生效)

根据你的操作系统,在终端执行对应的启动命令:

  • Linux/macOS:
    NODE_OPTIONS=--openssl-legacy-provider npm start
    
  • Windows CMD:
    set NODE_OPTIONS=--openssl-legacy-provider && npm start
    
  • Windows PowerShell:
    $env:NODE_OPTIONS="--openssl-legacy-provider"; npm start
    

方法二:修改package.json脚本(永久生效)

直接修改项目根目录的package.json文件,在启动脚本中加入环境变量:

"scripts": {
  "start": "NODE_OPTIONS=--openssl-legacy-provider react-scripts start",
  "build": "NODE_OPTIONS=--openssl-legacy-provider react-scripts build",
  "test": "react-scripts test",
  "eject": "react-scripts eject"
}

如果需要跨平台兼容(Windows/Linux/macOS通用),可以先安装cross-env依赖:

npm install cross-env --save-dev

再修改脚本:

"scripts": {
  "start": "cross-env NODE_OPTIONS=--openssl-legacy-provider react-scripts start",
  "build": "cross-env NODE_OPTIONS=--openssl-legacy-provider react-scripts build",
  "test": "react-scripts test",
  "eject": "react-scripts eject"
}

方法三:升级react-scripts(彻底解决,推荐)

如果你的项目是通过create-react-app创建的,直接升级react-scripts到兼容Node.js 18的最新版本:

npm install react-scripts@latest

升级完成后,直接执行npm start即可正常启动项目,无需额外配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 22:47:04