解决在本地调试网页SVG图片显示正常上传到服务器以后SVG图片不显示

最近我打算将自己网站的LOGO制作成SVG的矢量图形,他的好处就是大小很小,只有几十KB,但是质量却很高,因为不是点阵的像素图,及时是放大到很大,边缘也不会出现锯齿,而且因为SVG实际上是个XML文档,那么我们在服务器端还可以压缩一下,让他更小。 //cdn.neilren.com/logo.svg 首先,你需要一个Internet Explorer 9或更高版本的浏览,否则需要安装Adobe SVG Viewer以支持SVG,当然,SVG是W3C标准,Firefox、Opera、Chrome 以及 Safari 都支持 SVG。 我制作完SVG图片以后,开始上传到服务器,并且将原来的PNG图片替换成SVG图片,在本地浏览都正常,但是上传到服务器以后,打开网址,就是不显示SVG图片,开始我以为是路径错了,但是相对链接、绝对链接我都试过了,确定不是路径的问题。我仔细的对比别人网站的SVG图片,发现我的图片和别人的有点不同,缺少 MIME type,那么我就在服务器端添加SVG文件的MIME类型,MIME type : image/svg+xml ,再浏览,正常显示了。 什么是MIME类型呢? 服务器将MIME标志符放入传送的数据中来告诉浏览器使用哪种插件读取相关文件。浏览器接收到文件后,会进入插件系统进行查找,查找出哪种插件可以识别读取接收到的文件。如果浏览器不清楚调用哪种插件系统,它可能会告诉用户缺少某插件,或者直接选择某现有插件来试图读取接收到的文件,后者可能会导致系统的崩溃。传输的信息中缺少MIME标识可能导致的情况很难估计,因为某些计算机系统可能不会出现什么故障,但某些计算机可能就会因此而崩溃。