【BUG】GitHub连接失败Failed to connect to github.com port 443 after 21056 ms, Couldn't connect to server
一、问题描述
在使用Git操作时遇到以下错误:
1 | fatal: unable to access 'https://github.com/username/repository.git/': Failed to connect to github.com port 443 after 21056 ms: Couldn't connect to server |
二、原因分析
此错误通常由以下原因导致:
- 网络连接问题
- 防火墙或代理设置阻止了连接
- DNS解析问题
- GitHub服务暂时不可用
- SSL/TLS握手失败
三、解决方案
(一)检查网络连接
确认您的计算机已连接到互联网,可以通过ping命令测试:
1 | ping github.com |
(二)配置Git代理
如果您在使用代理上网,需要配置Git使用代理:
1 | # 设置HTTP代理 |
如需取消代理设置:
1 | git config --global --unset http.proxy |
(三)修改远程URL使用SSH
将HTTPS连接方式改为SSH可能解决问题:
1 | # 查看当前远程URL |
(四)更新SSL证书
更新系统的SSL证书:
1 | # Windows (使用管理员权限运行PowerShell) |
(五)修改DNS设置
尝试使用公共DNS服务器:
- Google DNS: 8.8.8.8, 8.8.4.4
- Cloudflare DNS: 1.1.1.1, 1.0.0.1
(六)修改hosts文件
编辑hosts文件添加GitHub的IP地址:
1 | # 可以通过ping github.com获取最新IP |
hosts文件位置:
- Windows: C:\Windows\System32\drivers\etc\hosts
- Linux/Mac: /etc/hosts
(七)增加Git操作超时时间
1 | git config --global http.lowSpeedLimit 0 |
(八)检查GitHub服务状态
访问 GitHub Status 确认GitHub服务是否正常运行。
四、预防措施
- 保持网络稳定性
- 定期更新Git客户端
- 配置适当的网络代理
- 考虑使用SSH而非HTTPS进行连接
- 在网络条件不稳定时使用离线工作模式
以上方法可逐一尝试,直到问题解决。
五、参考资料
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Uwakeme!
评论