Windows10 x64系统执行npm命令报OpenSSL配置错误无法正常使用
问题根因
该问题由两个异常叠加导致:
- 系统
OPENSSL_CONF环境变量被PostgreSQL ODBC驱动修改为指向不存在的配置文件,Node.js 17+版本内置的OpenSSL会优先读取该环境变量加载配置,导致npm启动报错 - Node.js更新过程中断导致安装文件损坏,注册表残留信息可以正常识别node版本,但缺少实体安装文件无法卸载
修复步骤
第一步:验证临时修复效果
你之前使用的set是CMD环境的变量设置命令,PowerShell下语法不同,按以下操作验证:
- 打开新的PowerShell窗口,执行命令:
$env:OPENSSL_CONF = $null npm -v
如果能正常输出版本号,说明环境变量问题定位正确。
第二步:永久删除错误的环境变量
- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 分别在「用户变量」和「系统变量」列表中查找名为
OPENSSL_CONF的条目,找到后直接删除 - 关闭所有已打开的终端窗口,重新打开PowerShell即可正常使用npm命令
第三步:修复损坏的Node.js安装
- 直接下载对应v17.1.0版本的Node.js安装包,运行后选择「修复」选项,完成后即可在Program Files中找到安装文件,也能正常通过控制面板卸载
- 如果不需要保留v17.1.0版本,可直接下载最新的Node.js LTS版本安装包覆盖安装,旧的损坏版本会被直接替换,无需额外卸载操作
内容的提问来源于stack exchange,提问作者Felipe Villa
相关产品推荐
相关产品推荐

