问题描述
我们在用Hexo+Github搭建个人博客的过程中,执行hexo clean ,hexo g ,hexo d 三部曲生成和部署网页。在执行hexo d 的时候总会出现连接超时或者SSL错误的问题:
Failed to connect to github.com port 443: Timed out
OpenSSL SSL_read: Connection was reset, errno 10054
网络通解
关于连接超时问题,网上主流解决方法是自定义一个接口代理或输入如下语句禁用接口代理:
git config --global --unset http.proxy
git config --global --unset https.proxy
这个方法只是偶尔有用,治标不治本,而且有几次连接超时的时候我用git config –global http.proxy 查询接口,返回的就是空,说明这个语句的执行并没有起到实际作用。
关于SSL错误的问题,主流的解决办法是把SSL验证设为false:
git config --global http.sslVerify "false"
具体可以参考git报错解决:Failed to connect to github.com port 443: Timed out问题解决以及Git报错解决:OpenSSL SSL_read: Connection was reset, errno 10054 错误解决,不过这些方法都不是一劳永逸的,有时候就会失效。
终极解决办法
最终我发现问题在于根目录配置文件_config.yml的deploy这部分,仓库地址repository原来是写了https开头,将deploy改成如下即可正常部署:
deploy:
type: git
repository: git@github.com:YOURNAME/YOURNAME.github.io.git
branch: master
经过测试,该方法是有效的。欢迎各位交流与指正。
|