【问题标题】:plz help for aws ec2 react+node build error请帮助 aws ec2 react+node 构建错误
【发布时间】:2021-12-07 00:10:54
【问题描述】:

我在两个不同的文件夹“客户端”(前端)和“服务器”(后端)中使用 react webapp 在 ec2 服务器上,我从 git 克隆了我的项目并在客户端文件夹中启动 npm install。 然后输入 npm run build。 最后我遇到了下面的错误。 我不知道这个错误有什么问题...

Creating an optimized production build...
Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:67:19)
    at Object.createHash (node:crypto:130:10)
    at module.exports (/home/ec2-user/seezzle/client/node_modules/webpack/lib/util/createHash.js:135:53)
    at NormalModule._initBuildHash (/home/ec2-user/seezzle/client/node_modules/webpack/lib/NormalModule.js:417:16)
    at handleParseError (/home/ec2-user/seezzle/client/node_modules/webpack/lib/NormalModule.js:471:10)
    at /home/ec2-user/seezzle/client/node_modules/webpack/lib/NormalModule.js:503:5
    at /home/ec2-user/seezzle/client/node_modules/webpack/lib/NormalModule.js:358:12
    at /home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:373:3
    at iterateNormalLoaders (/home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
    at iterateNormalLoaders (/home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
    at /home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:236:3
    at runSyncOrAsync (/home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:130:11)
    at iterateNormalLoaders (/home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:232:2)
    at Array.<anonymous> (/home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:205:4)
    at Storage.finished (/home/ec2-user/seezzle/client/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:55:16)
    at /home/ec2-user/seezzle/client/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:91:9
/home/ec2-user/seezzle/client/node_modules/react-scripts/scripts/build.js:19
  throw err;
  ^

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:67:19)
    at Object.createHash (node:crypto:130:10)
    at module.exports (/home/ec2-user/seezzle/client/node_modules/webpack/lib/util/createHash.js:135:53)
    at NormalModule._initBuildHash (/home/ec2-user/seezzle/client/node_modules/webpack/lib/NormalModule.js:417:16)
    at /home/ec2-user/seezzle/client/node_modules/webpack/lib/NormalModule.js:452:10
    at /home/ec2-user/seezzle/client/node_modules/webpack/lib/NormalModule.js:323:13
    at /home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:367:11
    at /home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:233:18
    at context.callback (/home/ec2-user/seezzle/client/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
    at /home/ec2-user/seezzle/client/node_modules/babel-loader/lib/index.js:59:103 {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

【问题讨论】:

  • 我在离子反应项目中面临同样的问题!
  • 查看下面的答案 :) 就我而言,这是 Node 版本的问题。

标签: node.js reactjs amazon-ec2 build


【解决方案1】:

验证您的 Node 版本,是 LTS 版本 14.x.x

node --version

尝试卸载当前并安装 LTS https://nodejs.org/en/download/

【讨论】:

  • 谢谢!!是版本问题!
【解决方案2】:

试试这个命令

export NODE_OPTIONS=--openssl-legacy-provider

【讨论】:

    【解决方案3】:

    我修复了它,将我的节点版本降级为 LTS。我在 node.17X 中遇到了这个问题。当我降级到 16.12.0 LTS 后,我的问题就解决了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-20
      • 2023-03-09
      • 2011-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-10
      相关资源
      最近更新 更多