关于Github的22端口被占用
大概是1月24号晚上十一点半左右,访问了一下博客,所有图片全部都404了。
原本以为Github的问题,但是Github访问一切正常
又访问了以下图片直链,结果404
后来发现是图片直链上面CDN挂了,我用搜索工具替换了新的CDN
本地部署访问正常。
正当我部署到服务器的时候。
Hexo出现了报错
然后我就照着这个错误各种搜索,参考了Hexo官方的帮助。和各种博客上面的解决办法。
其实我在开始的时候没认为是Github的问题,因为前面我已经排查了一下Github,结果可以正常访问。
然后就各种搜各种解决,删除.deploy_git,什么回滚怎么这么……
甚至我重新部署了Github端的SSH公钥,问题依旧存在
然后我看到有人说是网络问题,我从浏览器访问了Github,都很正常
然后我就看到了给git设置代理的方法,是不是git没用走代理
配置http代理
1 | git config --global http.proxy 127.0.0.1:10809 |
查看代理是否设置成功
1 | git config --global --get http.proxy |
设置完以后还是没用解决问题。
再后来我尝试直接通过git访问Github
1 | ssh -T git@github.com |
结果直接报错,其实已经开始气馁了
ssh: connect to host github.com port 22: Connection refused
翻译一下
ssh:连接到主机github.com端口22:连接被拒绝
但是后来按照这个解决方向继续搜索解决方法就明确了很多。
终于终于,我明白了问题所在
默认ssh默认使用的是22端口,报错就意味着22端口无法访问到Github
浏览器是能够正常访问Github,但是浏览器默认不是以22号端口访问
解决办法就变得简单了
在用户文件夹下的.ssh文件夹下新建一个文本文档
写入如下信息,意思就是SSH直接走443端口,保存为config,注意,就是这个文件名,没用后缀。
1 | Host github.com |
然后继续通过git访问一下Github
1 | ssh -T git@github.com |
很快返回信息
1 | Hi SansuidouEr! You've successfully authenticated, but GitHub does not provide shell access. |
这时候再来一套三连
1 | hexo cl && hexo g && hexo d |
成功解决!