Cada vez que intento ejecutar npm start en mi Windows PowerShell para mi proyecto de reacción, me sigue mostrando errores.
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 (C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\util\createHash.js:135:53) at NormalModule._initBuildHash (C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\NormalModule.js:417:16) at handleParseError (C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\NormalModule.js:471:10) at C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\NormalModule.js:503:5 at C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\NormalModule.js:358:12 at C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\loader-runner\lib\LoaderRunner.js:373:3 at iterateNormalLoaders (C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\loader-runner\lib\LoaderRunner.js:214:10) at iterateNormalLoaders (C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\loader-runner\lib\LoaderRunner.js:221:10) C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\react-scripts\scripts\start.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 (C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\util\createHash.js:135:53) at NormalModule._initBuildHash (C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\NormalModule.js:417:16) at C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\NormalModule.js:452:10 at C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\webpack\lib\NormalModule.js:323:13 at C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\loader-runner\lib\LoaderRunner.js:367:11 at C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\loader-runner\lib\LoaderRunner.js:233:18 at context.callback (C:\Users\user\Documents\Fashola\Web-Development\app-project\node_modules\loader-runner\lib\LoaderRunner.js:111:13) at C:\Users\user\Documents\Fashola\Web-Development\app-project\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'Y también, ¿qué significa esa razón: 'sin soporte' ?
Si está usando Webpack (que parece que OP está usando desde su seguimiento de pila) y Node 17, ha habido algunos problemas de compatibilidad. El nodo 17 cambió de OpenSSL 1.1 a 3.0, y hubo algunos cambios importantes que causaron un error en Webpack. Aparecen un par de soluciones a este problema.
La versión 5.61.0 corrige este error. Esta es la solución más fácil.
Si está en Webpack 4, los desarrolladores no tienen intención de crear una corrección de errores para esta versión. Deberá actualizar a la versión 5 o usar la opción 3/4 a continuación.
webpack.config.js . Para webpack>=5.54 , puede cambiar manualmente el algoritmo hash a uno que funcione con OpenSSL 3.0.
module.exports = { output: { hashFunction: 'xxhash64' } }Cambiar a una versión LTS de Node (actualmente 16.x) debería resolver el problema por ahora. Sin embargo, esto no resuelve el problema, solo lo retrasa .
NODE_OPTIONSPara cualquier versión de Webpack con Node 17, puede configurar un indicador para volver a la antigua API de OpenSSL. Esto no es ideal, pero funciona.
# Works in *nix shells NODE_OPTIONS='--openssl-legacy-provider' npm start # ============================ # or (cross-platform solution) # ============================ # requires installing `cross-env` npm install -D cross-env # then... cross-env NODE_OPTIONS='--openssl-legacy-provider' npm start