目录
- 问题复现
- 原因分析
- 解决办法
- 1、清空缓存
- 2、查看当前的npm镜像设置
- 3、切换新镜像源
- 4、查看新源是否设置成功
- 5、可以正常安装需要的工具了
- 问题小结
问题复现
今年没怎么已经接近年中,很快呀,因为工作环境和工作内容导致我已经有一段时间没在外网环境下运行VUE项目了,这两天运行了一个VUE项目,结果 install 就出错,不管用npm、cnpm、yarn都会出错,报错信息如下:
npm ERR! request to https://registry.npm.taobao.org/vue-pdf failed,
reason: certificate has expired
原因分析
报错信息翻译成中文就是:
请求 https://registry.npm.taobao.org 失败,
原因:证书已过期
其实早在 2021 年,淘宝就发文称,npm 淘宝镜像已经从 http://registry.npm.taobao.org 切换到了 http://registry.npmmirror.com。旧域名也将于 2022 年 5 月 31 日停止服务(直到 HTTPS 证书到期才真正不能用了)
2024年1 月 22 日,淘宝原镜像域名(http://registry.npm.taobao.org)的 HTTPS 证书正式到期,导致旧的 npm 淘宝镜像在使用时出错了。
解决办法
1、清空缓存
npm cache clean --force
2、查看当前的npm镜像设置
npm config get registry
3、切换新镜像源
npm config set registry https://registry.npmmirror.com
4、查看新源是否设置成功
npm config get registry
5、可以正常安装需要的工具了
npm insatll
问题小结
请注意,这只是解决证书过期问题的一种方法,具体的解决方案可能会因你的项目配置和环境而有所不同。如果你在执行上述步骤后仍然遇到问题,可能需要检查你的网络连接、npm版本等其他因素。同时,如果你在使用其他工具或服务(如yarn、webpack等),也需要检查它们的配置是否正确。
另外,为了避免未来再次遇到类似的问题,建议定期检查和更新你的依赖和工具,以确保它们是最新的版本。同时,关注相关的社区和资源,以便及时获取最新的信息和解决方案。