Windows11安装grunt-cli报错UNABLE_TO_VERIFY_LEAF_SIGNATURE求解决
环境信息
- 操作系统:Windows 11
- Node.js版本:16
问题详情
执行全局安装grunt-cli命令:
npm i grunt-cli -g
出现如下错误:
npm ERR! code UNABLE_TO_VERIFY_LEAF_SIGNATURE npm ERR! errno UNABLE_TO_VERIFY_LEAF_SIGNATURE npm ERR! request to https://registry.npmjs.org/grunt-cli failed, reason: unable to verify the first certificate npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\USER\AppData\Local\npm-cache\_logs\2023-07-20T07_00_36_434Z-debug-0.log
已尝试的操作:
export NODE_TLS_REJECT_UNAUTHORIZED=0 npm config set registry http://registry.npmjs.org/
并通过npm config get registry验证配置,但问题仍未解决。
解决建议
修正Windows环境变量设置命令
export是Linux/macOS的命令,Windows终端不支持。要临时关闭TLS证书校验,需用对应系统的命令:- CMD中执行:
set NODE_TLS_REJECT_UNAUTHORIZED=0 - PowerShell中执行:
$env:NODE_TLS_REJECT_UNAUTHORIZED=0
执行完成后重新运行安装命令。
- CMD中执行:
切换至国内npm镜像源
网络或证书链问题可能导致官方源访问异常,改用国内镜像源尝试:npm config set registry https://registry.npmmirror.com/之后再执行
npm i grunt-cli -g。检查并更新系统根证书
错误本质是Node无法验证证书链,可能是系统根证书过期或缺失:- 先确认系统时间正确(时间错误会导致证书校验失效):打开「设置」→「时间和语言」→「日期和时间」,开启自动同步。
- 打开「Internet选项」→「内容」→「证书」→「受信任的根证书颁发机构」,检查是否包含DigiCert等主流CA证书,若缺失可安装微软官方的根证书更新包。
清理npm缓存后重试
缓存损坏可能引发异常,先清理缓存再执行安装:npm cache clean --force npm i grunt-cli -g以管理员权限运行终端
全局安装可能需要系统权限,右键CMD或PowerShell选择「以管理员身份运行」,再执行安装命令。
内容的提问来源于stack exchange,提问作者Chetan Sachdev
相关产品推荐
相关产品推荐

