教你一招,解决Github图片不显示问题(2021.1.20测试可用)

Stars-one 2021年01月19日 885次浏览 本篇字数为3,409字

本文为作者原创,转载请注明出处,谢谢配合
作者:Stars-one
链接:https://stars-one.site/2021/01/19/教你一招解决github图片不显示问题


本文提供的是windows系统解决方法,linux系统和mac系统可以参考原理,修改DNS的ip地址为阿里云或者是修改hosts文件

问题

可能有些朋友和我遇到同样的问题,逛Github的时候会发现,某些开源库的readme文件的图片无法显示,或者是自己头像和别的用户头像也不显示,如下图所示

Github图片无法显示

这种情况,一般是因为DNS无法解析到图片外链地址的ip地址

我以TornadoFx的logo图片为例,它的地址为https://github.com/edvin/tornadofx/raw/master/graphics/tornado-fx-logo.png?raw=true,实际上github上面的图片地址都是githubusercontent.com这个域名,如https://camo.githubusercontent.com/8acab398c6e900d3cb442aeca154c84341558c02c3a8f3027d09b29d3d74e9dd/68747470733a2f2f7472617669732d63692e6f72672f656476696e2f746f726e61646f66782e737667

camo.githubusercontent.com这个就是实际访问的域名

我们ping一下上面的这个域名,会发现ping不通

修改DNS解决(推荐)

测试的时候发现,有些图片可以显示,有些图片无法显示,强迫症忍不了,可以使用改hosts文件方法,改hosts方法在下面


PS:阿里云DNS服务器地址为223.5.5.5223.6.6.6

下面以win10系统为例,具体步骤如下

1.进入网络设置

2.打开适配器设置

3.选择某个网络

这里选择你当前正在使用的网络,wifi或者是宽带,我这里用的是wifi,双击打开

4.设置DNS

修改hosts文件解决

上面测试的ping命令之所以不通,还是因为国内有限制,我们国内的DNS运营商没上面的那个域名加到DNS映射列表中,所以导致我们访问该域名是找到具体的ip地址

解决方法也很简单,我们可以通过外国的ip地址测试找到该域名具体对应的ip地址,之后手动地加到我们本机的host文件中(相当于DNS映射)

科普一下:本机访问一个域名,先是通过本机的host文件中去找对应的ip地址,如果找不到才会请求DNS服务器去寻找该域名对应的ip地址

找到域名对应的ip地址

访问https://www.ipaddress.com/,之后在页面输入camo.githubusercontent.com,可以看到其对应的ip地址

对应的ip地址

查看下方,可以发现很多类似的

我们得把上面的地址全部加到hosts文件中且映射为之前的ip地址才行

修改hosts文件

之后,我们把这个ip地址加到host文件中去

host文件路径:C:\Windows\System32\drivers\etc\hosts

199.232.96.133 camo.githubusercontent.com
199.232.96.133 cloud.githubusercontent.com
199.232.96.133 raw.githubusercontent.com
199.232.96.133 gist.githubusercontent.com
199.232.96.133 desktop.githubusercontent.com
199.232.96.133 user-images.githubusercontent.com
199.232.96.133 avatars0.githubusercontent.com
199.232.96.133 avatars1.githubusercontent.com
199.232.96.133 avatars2.githubusercontent.com
199.232.96.133 avatars3.githubusercontent.com
199.232.96.133 avatars4.githubusercontent.com
199.232.96.133 avatars5.githubusercontent.com
199.232.96.133 avatars6.githubusercontent.com
199.232.96.133 avatars7.githubusercontent.com
199.232.96.133 avatars8.githubusercontent.com

PS:上述手动添加,可能会有遗漏,如果你发现访问github上面仍存在无法查看的图片,可以复制该图片的地址,参照上方的内容在hosts文件加上即可

如果之后某天发现图片无法访问了,可以重复此步骤,去ipaddres网站查询新的ip地址,之后再修改hosts文件就可以了

刷新DNS

修改完hosts文件后,我们需要通过cmd命令来刷新DNS,不懂cmd命令可以使用重启大法...

ipconfig /flushdns

结果

现在,我们可以再试着ping一下,发现是成功ping通了

网址可ping通

访问github也是可以看到图片了,大功告成!

github成功显示图片

相关标签