If you are using NodeJs 17 for development purposes and your framework is either Angular or VueJs or React and using Webpack, This can be caused by web pack nodejs 17: digital envelope routines::unsupported · Issue #14532 · webpack/webpack (github.com).
Node 17 has announced one workaround for this.
If you hit an
Node.js 17 is here!. This blog was written by Bethany… | by Node.js | Node.js Collection | MediumERR_OSSL_EVP_UNSUPPORTED
error in your application with Node.js 17, it’s likely that your application or a module you’re using is attempting to use an algorithm or key size which is no longer allowed by default with OpenSSL 3.0. A new command-line option,--openssl-legacy-provider
, has been added to revert to the legacy provider as a temporary workaround for these tightened restrictions.
To fix this issue you need to set NODE_OPTIONS
environment vale to --openssl-legacy-provider
there are several ways to set this environment variable.
On UNIX based system you can use export or on windows, you can use the set command.
$ export NODE_OPTIONS=--openssl-legacy-provider
> set NODE_OPTIONS=--openssl-legacy-provider
Or you can do this using package.json
the file scripts section as given below
"scripts": {
"start": "react-scripts --openssl-legacy-provider start",
"build": "react-scripts --openssl-legacy-provider build",
"test": "react-scripts test",
"eject": "react-scripts eject"
}
Even you can downgrade the Node.js version to 16 or other. The node will fix this issue in the coming releases.