MacOS下npm install报unable to get local issuer certificate

一、报错

macrored@macroredMac-mini oc % npm install better-sqlite3                                 
npm error code UNABLE_TO_GET_ISSUER_CERT_LOCALLY
npm error errno UNABLE_TO_GET_ISSUER_CERT_LOCALLY
npm error request to https://registry.npmmirror.com/better-sqlite3 failed, reason: unable to get local issuer certificate
npm error A complete log of this run can be found in: /Users/macrored/.npm/_logs/2026-04-02T11_41_33_265Z-debug-0.log

二、解决方法

1.查看本地ca证书位置

macrored@macroreddeMac-mini oc % brew list ca-certificates
/opt/homebrew/Cellar/ca-certificates/2025-05-20/sbom.spdx.json
/opt/homebrew/Cellar/ca-certificates/2025-05-20/share/ca-certificates/cacert.pem # 本机ca证书路径

2.设置环境变量(临时方案)

export NODE_EXTRA_CA_CERTS="/opt/homebrew/Cellar/ca-certificates/2025-05-20/share/ca-certificates/cacert.pem"

3.永久添加到shell配置文件

echo 'export NODE_EXTRA_CA_CERTS="/opt/homebrew/Cellar/ca-certificates/2025-05-20/share/ca-certificates/cacert.pem"' >> ~/.zshrc

三、完成

macrored@macroreddeMac-mini oc % npm install better-sqlite3 

added 31 packages in 2s

24 packages are looking for funding
  run `npm fund` for details

参考文章

[1] npm全局安装openclaw时提示‘unable to get local issuer certificate’,该怎么安全又有效地解决?
[2] npm get code: 'UNABLE_TO_GET_ISSUER_CERT_LOCALLY'

posted @ 2026-04-02 20:09  Macrored  阅读(10)  评论(0)    收藏  举报