问题点:
在自己github推送代码的时候,突然爆出如下的错误:LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
问题原因
使用了科学的上网工具更改了代理的地址,导致github使用了代理的方式进行处理。
不一定是污染了hosts文件。
解决办法:
- 首先参考了:juejin.cn/post/684490… 这一篇博客的处理方式,内容可以简化为最后的部分,在hosts文件里面增加如下的配置信息:
# github start 140.82.112.3 github.com 199.232.5.194 github.global.ssl.fastly.net 185.199.108.153 assets-cdn.github.com 185.199.109.153 assets-cdn.github.com 185.199.110.153 assets-cdn.github.com 185.199.111.153 assets-cdn.github.com
- 由于个人使用的是 MAC电脑,所以需要刷新一下dns的记录信息,执行下面的命令之后,会出现一段“广播“,所以后面的命令不输入即可,另外命令不建议手敲,没什么意义还容易出错,比如我就出错了=-=
sudo killall -HUP mDNSResponder;say DNS cache has been flushed
- 最后,可以先尝试改改注释推送一下看下是否成功,如果还是
LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
,我们可以使用下面的命令把github的代理去掉:
git config --global --unset http.proxy; git config --global --unset https.proxy;
- 最后可以配合软件:switchHost 使用(mac系统的软件)
总结
用科学上网的工具不可避免的会出现这种情况,有时候还比较坑甚至找不到原因,这里做一个记录希望给读者有帮助。