Error: error:0308010C:digital envelope routines::unsupported 原因及解决方案
原因
由于 Node.js 17+ 默认使用 OpenSSL 3.0 导致的兼容性问题。
解决方案
针对Mac的解决方式
临时启用旧版 OpenSSL
export NODE_OPTIONS=--openssl-legacy-provider
如需永久生效,需要将export NODE_OPTIONS=--openssl-legacy-provider 添加到~/.zshrc或 ~/.bash_profile文件中。
其他方式
降级到Nodejs 16及其以下的版本。 这个利用重新安装或者 nvm install 16 && nvm use 16即可,不再赘述。