男人互做网站,腾讯云可以做网站吗,建站助手官网,wordpress 头像带链接一、问题背景 最近在整理之前写过的实验、项目#xff0c;打算把这些东西写成blog#xff0c;并把工程文件整理上传到Github上。但在上传README文件的时候#xff0c;发现github无法显示README中的图片#xff0c;如下图所示#xff1a; 在README中该图片路径为#xff1…一、问题背景 最近在整理之前写过的实验、项目打算把这些东西写成blog并把工程文件整理上传到Github上。但在上传README文件的时候发现github无法显示README中的图片如下图所示 在README中该图片路径为 而仓库的内容为 其中contents.pdf是论文的目录页虽然是pdf格式但是按照我的经验LaTeX、markdown都是可以把pdf识别成高清矢量图的因此在本地的README中这个目录是会显示的如下 查阅百度百科PDFPortable Document Format的简称意为“可携带文档格式”是由Adobe Systems用于与应用程序、操作系统、硬件无关的方式进行文件交换所发展出的文件格式。PDF文件以PostScript语言图象模型为基础无论在哪种打印机上都可保证精确的颜色和准确的打印效果即PDF会忠实地再现原稿的每一个字符、颜色以及图象。因此pdf可以是图像的后缀。 二、解决方法记录了尝试过程如不想看废话直接看方法总结 查阅资料发现github中README.md关联图片的图片地址是具有规范格式 https://github.com/用户名/repository仓库名/raw/分支名master/图片文件夹名称/***.png or***.jpg 如果没有图片文件夹则可以直接省略此部分即可。于是我尝试把图片地址改为 但是依旧显示不了难道是github不能显示pdf于是我把pdf转换成了png图片 然后尝试了以下两个地址 
但是依旧显示不了于是我想干脆直接用图片的绝对地址试试 点击仓库的contents.png找到图片地址同时发现即使不在README中还是无法显示该图片。尝试了一下绝对地址 但依旧不能在README中显示图片淦。。 点击链接查阅一下 发现无法访问显示的地址开头是 raw.githubusercontent.com 查阅资料发现raw.githubusercontent.com 是github用来存储用户上传文件不是项目仓库的文件而是issue里的图片之类的的服务地址。放在亚马逊s3上。是github 的素材服务器 (assets server), 避免跟主服务抢占负载。 直接搜发现好像是因为有 墙 的存在。。 也有说是DNS污染了这里简要介绍一下DNS 污染网域服务器缓存污染DNS cache pollution又称域名服务器缓存投毒DNS cache poisoning是指一些刻意制造或无意中制造出来的域名服务器数据包把域名指往不正确的IP地址。一般来说在互联网上都有可信赖的网域服务器但为减低网络上的流量压力一般的域名服务器都会把从上游的域名服务器获得的解析记录暂存起来待下次有其他机器要求解析域名时可以立即提供服务。一旦有关网域的局域域名服务器的缓存受到污染就会把网域内的计算机导引往错误的服务器或服务器的网址。 尝试配置hosts文件直接指向github的服务器。用ipaddress查一下raw.githubusercontent.com 的ip 修改hosts文件mac的hosts在 /etc/hosts添加 199.232.68.133 raw.githubusercontent.com
199.232.68.133 githubusercontent.com如果不习惯直接命令行修改可以使用SwitchHosts工具mac、win都适用 添加hosts配置 添加github相关host 添加之前的配置并开启该配置 这里再赘述一句如果不需要这个hosts可以直接关掉如果需要注释某一行配置只需要单击配置前行号即可 好了搞了一圈看看github能不能显示图片了 激动人心终于可以显示图片了 经过测试之前的几种路径格式都可以如此一来就用最简单的相对路径就好了下述第一行 

然而github的README好像还是不支持把pdf显示下面的一行仍旧不显示 三、方法总结 所以不管是README不能显示图片还是github网站上不能显示图片并不是图片路径格式的问题而是DNS污染了即无法访问存放了github图片素材的raw.githubusercontent.com站点。 解决方法很简单查找raw.githubusercontent.com的ip并将其添加至系统hosts文件即可 用ipaddress查一下raw.githubusercontent.com 的ip 修改hosts文件添加github相关host 添加之前的配置并开启该配置 然后就可以正常显示github上所有的图片了