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

首个React项目执行npm start提示localhost拒绝连接如何解决

报错原因说明

你遇到的ERR_OSSL_EVP_UNSUPPORTED错误是Node.js版本和项目依赖的webpack版本兼容性问题导致的:你当前使用的是Node.js v17及以上版本,该版本默认启用了OpenSSL 3.0,旧版create-react-app内置的webpack依赖仍使用OpenSSL 1.0的加密算法,二者不兼容导致开发服务启动失败,所以浏览器访问localhost会提示拒绝连接。

可行解决方法

下面提供三种不同场景的解决方案,任选一种即可:

  • 临时启动方案(无需修改项目配置)
    根据你使用的系统和终端类型,执行对应命令启动项目即可:

    • Mac/Linux终端: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文件,找到scripts配置段,修改启动、构建等命令,添加OpenSSL兼容参数:

    // 修改前的配置
    "scripts": {
      "start": "react-scripts start",
      "build": "react-scripts build",
      "test": "react-scripts test",
      "eject": "react-scripts eject"
    }
    
    // 修改后的配置
    "scripts": {
      "start": "NODE_OPTIONS=--openssl-legacy-provider react-scripts start",
      "build": "NODE_OPTIONS=--openssl-legacy-provider react-scripts build",
      "test": "NODE_OPTIONS=--openssl-legacy-provider react-scripts test",
      "eject": "react-scripts eject"
    }
    

    修改保存后,正常执行npm start即可启动项目。

  • 长期兼容方案
    将本地Node.js版本降级到v16 LTS长期支持版,该版本和旧版create-react-app的兼容性最优,不会出现该类OpenSSL兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 15:45:06