GitHub简介:
GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。
GitHub 于 2008 年 4 月 10 日正式上线,使用Ruby on Rails编写而成,用户可以免费创建公开的代码仓库。
在2018 年 6 月 4 日,微软宣布通过 75 亿美元的股票交易收购代码托管平台 GitHub。
至于GitHub更详细的内容,可查看这篇文章:https://www.cnblogs.com/yoke/p/7719780.html
GitHub图片问题:
笔者在托管开源项目(iReSignDylib)时,发现提交的软件截图,以及README.md文档图片均无法打开或显示,甚至头像也会偶尔加载不成功的问题。
1. 头像不显示,如下图:
2. README.md文件插入的图片不显示,如下图:
![ScreenShot](https://raw.githubusercontent.com/mapboo/iReSignDylib/master/ScreenShot.png)
3. 仓库中提交的图片无法打开,如下图:
原因分析:
图片地址请求北京拒绝连接,报错提示:net::ERR_CONNECTION_REFUSED,造成原因可能如下几种情况:
- IP或端口错误
- 服务器未开启
- DNS混乱污染
- HOST设置错误
解决方案:
针对修改本地HOSTS文件对Github网站加载的资源域名解析,具体操作如下:
1. 找到无法加载的图片网址,右键获取图片路径,或元素检查都可获取到,如:
https://raw.githubusercontent.com/mapboo/iReSignDylib/master/ScreenShot.png
https://avatars3.githubusercontent.com/u/5618904?s=60&v=4
https://avatars0.githubusercontent.com/u/5618904?s=60&u=0bf7f1ea1453d9725ea3b8a74fc7aaf0d09fd000&v=4
https://avatars1.githubusercontent.com/u/5618904?s=120&v=4
... 诸如此类,都可以看出域名为 .githubusercontent.com 下的路径;
2. 查看域名的IP地址,打开网站:https://www.ipaddress.com/,如下图:
依次输入https://raw.githubusercontent.com,https://avatars1.githubusercontent.com,可以看到如下图信息:
IP 地址:199.232.68.133,更新时间:Thu, 14 May 2020 20:15 GMT | Reviewed: Sat, 16 May, 2020 09:16 GMT。
查看github.com域名信息如下:
3. 修改hosts文件,对IP地址和域名做映射处理,方法如下:
- Window系统:C:\Windows\System32\drivers\etc\hosts
- Mac系统:/etc/hosts
笔者是Mac系统,以它为例,Window系统下操作基本一致,步骤如下:
首先,打开Mac终端,输入如下命令,如下图:
sudo vi /etc/hosts
输入本机密码后回车,打开如下图:
注意:只查看,可输入:O,现在我们要修改,需要输入:E,然后打开文件,输入:i 进入编辑状态,如下图:
其次,我们在文件末尾加入如下IP和域名映射内容,笔者已将相关映射都整理如下:
# GitHub Start
192.30.253.112 github.com
192.30.253.119 gist.github.com
199.232.68.133 assets-cdn.github.com
199.232.68.133 raw.githubusercontent.com
199.232.68.133 gist.githubusercontent.com
199.232.68.133 cloud.githubusercontent.com
199.232.68.133 camo.githubusercontent.com
199.232.68.133 avatars0.githubusercontent.com
199.232.68.133 avatars1.githubusercontent.com
199.232.68.133 avatars2.githubusercontent.com
199.232.68.133 avatars3.githubusercontent.com
199.232.68.133 avatars4.githubusercontent.com
199.232.68.133 avatars5.githubusercontent.com
199.232.68.133 avatars6.githubusercontent.com
199.232.68.133 avatars7.githubusercontent.com
199.232.68.133 avatars8.githubusercontent.com
# GitHub End
最后,按下 ESC 按键,输入 :wq,写入保存文件,如下图:
效果展示:
修改hosts文件之后,重新打开 https://github.com/mapboo/iReSignDylib,可以看到图片全部都显示了,如下图:
结束语:
如果一旦发现图片又无法显示,只需参考以上内容,找出域名和IP地址做相应的映射,及时更新修改hosts文件即可解决。