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

Webpack构建报ERR_OSSL_EVP_UNSUPPORTED如何修改哈希算法?

问题根因

这个报错产生的原因是Node.js 17及以上版本内置的OpenSSL 3.0版本正式弃用了MD4哈希算法,而低于5.61.0版本的Webpack默认使用MD4作为生成构建哈希的算法,因此触发兼容性错误。

解决方案

方案1:修改Webpack配置指定哈希算法(最推荐,无兼容副作用)

直接在你的webpack.config.js的output配置项中新增hashAlgorithm字段,指定使用兼容OpenSSL 3.0的哈希算法即可,可选值为sha256或者性能更高的xxhash64。

修改前的output配置:

output: {
    path: path.resolve(__dirname, 'js'),
    filename: 'scripts.js'
},

修改后的output配置:

output: {
    path: path.resolve(__dirname, 'js'),
    filename: 'scripts.js',
    hashAlgorithm: 'sha256' // 新增该行,也可替换为'xxhash64'获得更快的构建速度
},

修改后的完整配置如下:

const path = require('path');
const webpack = require('webpack');

const TerserPlugin = require('terser-webpack-plugin');

module.exports = {
    mode: 'development',
    entry: './src/js/scripts.js',

    output: {
        path: path.resolve(__dirname, 'js'),
        filename: 'scripts.js',
        hashAlgorithm: 'sha256'
    },

    devtool: 'source-map',

    plugins: [new webpack.ProgressPlugin()],

    module: {
        rules: []
    },

    optimization: {
        minimizer: [new TerserPlugin()],

        splitChunks: {
            cacheGroups: {
                vendors: {
                    priority: -10,
                    test: /[\\/]node_modules[\\/]/
                }
            },

            chunks: 'async',
            minChunks: 1,
            minSize: 30000,
            name: 'true'
        }
    }
};

方案2:临时启用OpenSSL旧版算法支持

如果暂时不想修改配置,可以在执行构建命令前添加环境变量,临时开启OpenSSL旧算法兼容:

  • Linux/Mac 环境执行命令:
NODE_OPTIONS=--openssl-legacy-provider npm run build
  • Windows CMD 环境执行命令:
set NODE_OPTIONS=--openssl-legacy-provider && npm run build
  • Windows PowerShell 环境执行命令:
$env:NODE_OPTIONS="--openssl-legacy-provider"; npm run build

方案3:升级Webpack版本

Webpack 5.61.0及以上版本已经将默认哈希算法更换为不依赖OpenSSL的xxhash64,升级Webpack到最新稳定版也可以直接解决问题:

npm install webpack@latest --save-dev

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 15:57:04