下载npm依赖包报错 npm ERR! code ERR_TLS_CERT_ALTNAME_INVALID npm ERR! errno ERR_TLS_CERT_ALTNAME_INVALID

npm报错 npm ERR! code ERR_TLS_CERT_ALTNAME_INVALID npm ERR! errno ERR_TLS_CERT_ALTNAME_INVALID

在下载npm依赖包输入 npm install 命令的时候出错 以下是错误信息

错误信息:

npm ERR! code ERR_TLS_CERT_ALTNAME_INVALID
npm ERR! errno ERR_TLS_CERT_ALTNAME_INVALID
npm ERR! request to https://registry.cnpmjs.org/vue-cli failed, reason: Hostname/IP does not match certificate’s altnames: Host: registry.cnpmjs.org. is not in the cert’s altnames: DNS:r.cnpmjs.org

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\yy\AppData\Roaming\npm-cache_logs\2020-06-12T05_41_01_727Z-debug.log

输入 npm install 出错

解决方法

输入命令:

  1. npm config set strict-ssl false
  2. npm install -g supervisor

之后再输入npm install 即可

https://marketing.csdn.net/poster/112?utm_source=1538247462&spm=1000.2116.3001.4180

### 解决方案 针对 `npm install -g cnpm` 报错以及 `'cnpm' 不是内部或外部命令` 的问题,可以从以下几个方面入手解决问题。 --- #### 1. **Node.js 版本兼容性** 如果当前使用的 Node.js 版本较低,可能导致与 `cnpm` 的不兼容。根据引用[^4],`cnpm` 需要 Node.js >= 14.18.0。因此,建议检查当前的 Node.js 版本: ```bash node -v ``` 如果版本低于要求,可以通过以下方式更新 Node.js: - 使用 NVM(Node Version Manager)安装更高版本的 Node.js: ```bash nvm install 16.20.2 nvm use 16.20.2 ``` 确保使用的是满足条件的 Node.js 版本后再尝试安装 `cnpm`。 --- #### 2. **TLS 证书校验问题** 部分用户在安装 `cnpm` 时会遇到 TLS 证书校验失败的问题,表现为以下错误信息: ``` npm ERR! code ERR_TLS_CERT_ALTNAME_INVALID npm ERR! errno ERR_TLS_CERT_ALTNAME_INVALID ``` 这是由于目标域名 (`registry.cnpmjs.org`) 的 SSL 证书与其主机名不匹配引起的。解决方法包括: - **临时忽略 SSL 错误** 在安装前强制关闭严格 HTTPS 检查: ```bash npm config set strict-ssl false ``` 安装完成后恢复默认设置: ```bash npm config delete strict-ssl ``` - **更换镜像源** 如果继续使用官方镜像存在困难,可以选择其他可靠的国内镜像源,例如 Taobao 镜像: ```bash npm config set registry https://registry.npmmirror.com/ ``` --- #### 3. **权限不足 (EPERM)** 如果报错显示类似于以下内容: ``` Error: EPERM: operation not permitted, rename ... ``` 说明当前用户缺乏必要的写入权限。以下是几种常见解决方案: - **以管理员身份运行终端** 确保在 Windows 上以管理员权限启动 PowerShell 或 CMD 后再执行安装命令。 - **更改全局模块路径** 默认情况下,npm 全局模块会被安装到受保护的系统目录中。可以将其更改为用户目录下的某个子文件夹: ```bash npm config set prefix "%USERPROFILE%\.npm-global" ``` 添加新路径到系统的 PATH 环境变量中: ```plaintext %USERPROFILE%\.npm-global\bin ``` - **调整文件夹权限** 对于指定的目标文件夹(如 `C:\Program Files\nodejs`),右键属性->安全选项卡,赋予当前登录账户完全控制权。 --- #### 4. **清理缓存和残留配置** 即使删除 `.npmrc` 文件并清除了缓存,仍可能出现遗留问题。按照以下步骤彻底清理环境: - 清理 npm 缓存: ```bash npm cache clean --force ``` - 删除旧有全局模块及其缓存数据: ```bash rmdir /s /q "%APPDATA%\npm" rmdir /s /q "%APPDATA%\npm-cache" ``` - 移除潜在干扰项——`.npmrc` 文件: ```bash del %USERPROFILE%\.npmrc ``` 完成以上操作后重新尝试安装 `cnpm`。 --- #### 5. **验证安装结果** 无论采用哪种方法成功安装了 `cnpm`,都需要进一步检验其可用性: ```bash cnpm -v ``` 若无任何错误反馈且返回版本号,则表明问题已被妥善解决。 --- ### 补充注意事项 尽管 `cnpm` 曾广泛用于加速 npm下载速度,但随着近年来主流包管理工具逐渐优化性能表现,推荐优先考虑原生 npm 结合合适的镜像站点来替代第三方客户端的功能需求[^4]。 ---
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值