网站首页 > 技术文章 正文
使用淘宝镜像在Node.js环境中安装依赖时经常会出现一个问题,特别是CERT_HAS_EXPIRED错误和TLS验证问题。TLS证书的管理越来越严格,尤其是在Node.js和npm更新之后。用户在尝试切换到淘宝镜像时经常会遇到TLS验证错误。出现这种情况的原因是npm从v7版本开始增强了TLS证书验证,这意味着某些镜像源(包括淘宝镜像)可能没有及时更新或不支持最新的TLS协议。
问题检查在使用npm时,您面临以下挑战:
尝试使用命令npm cache clean --force清除npm缓存,无法正常重新安装。
使用ping https://registry.npm.taobao.org检查确认网络正常运行。
npm config get proxy和npm config get https-proxy都返回空值,说明没有代理异常。
使用 npm install -g npm 更新 npm 时,出现 invalid npm update 错误,但更新后依赖仍然无法成功安装。
研究该问题后,发现与 TLS 相关。解决流程如下:
解决问题的方法
更换镜像源,命令:npm config set registry https://registry.npm.taobao.org。
npm ERR! code CERT_HAS_EXPIRED
npm ERR! errno CERT_HAS_EXPIRED
npm ERR! request to https://registry.npm.taobao.org/miniprogram-api-typings/-/miniprogram-api-typings-3.12.0.tgz failed, reason: certificate has expired
npm ERR! A complete log of this run can be found in: C:\Users\uljdc\AppData\Local\npm-cache\_logs\2024-11-12T07_27_21_890Z-debug-0.log
关闭 TLS 证书验证:关闭 npm 的 TLS 证书验证,命令 npm config set strict-ssl false,解决了安装依赖的问题。此方法虽然可以绕过证书验证问题,但也带来了潜在的安全风险,尤其是在与可能受到中间人攻击等威胁的公共 npm 存储库交互时。安装成功完成。
猜你喜欢
- 2024-12-30 go-admin开源项目,快速搭建一个管理后台系统,直接二次开发上线
- 2024-12-30 Ollama教程:本地LLM管理、WebUI对话、Python/Java客户端API应用
- 2024-12-30 Go 项目推荐之 go-admin go的项目
- 2024-12-30 nodejs多版本管理工具 nodejs 版本
- 2024-12-30 npm提示 sill idealTree buildDeps(安装element-ui组件库)
- 2024-12-30 CentOS+Nexus搭建npm私有仓库并推送代码
- 2024-12-30 内网npm私有仓库搭建以及使用教程
- 2024-12-30 TS,TypeScript,Windows环境下构建环境,安装、编译且运行
- 2024-12-30 如何提高npm 下载依赖过慢的问题 npm下载包
- 2024-12-30 使用 Verdaccio 搭建npm私有仓库 搭建自己的npm
- 02-21走进git时代, 你该怎么玩?_gits
- 02-21GitHub是什么?它可不仅仅是云中的Git版本控制器
- 02-21Git常用操作总结_git基本用法
- 02-21为什么互联网巨头使用Git而放弃SVN?(含核心命令与原理)
- 02-21Git 高级用法,喜欢就拿去用_git基本用法
- 02-21Git常用命令和Git团队使用规范指南
- 02-21总结几个常用的Git命令的使用方法
- 02-21Git工作原理和常用指令_git原理详解
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)