网站首页 > 技术文章 正文
使用淘宝镜像在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
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)