如果我嵌入图像到页面作为img
- src
使用Base64数据URI,是图像的元数据(EXIF,IPTC,XMP)仍然可用于谷歌的imagebot?
如果我嵌入图像到页面作为img
- src
使用Base64数据URI,是图像的元数据(EXIF,IPTC,XMP)仍然可用于谷歌的imagebot?
Answers:
Google不会为Google图片搜索索引数据URI图片。Google的John Mueller 在这里和下面的评论中都这样说。由于数据URI图像未在Google图像搜索中建立索引,因此它们中的EXIF数据无关紧要。
您可以验证这些图像没有被索引。我在Google图片中搜索“ data uri”,并抽查了结果。我查看的所有图像都是图像文件,而不是base64编码的图像URI。您会认为,如果Google能够为数据URI图像建立索引,那么其中的一些图像就会显示在该词的搜索结果中。
如果Google确实决定为数据URI图像建立索引,则它们应该能够从中获取EXIF数据。数据uri是带有data:image/png;base64,
前缀的整个base64编码文件(无空格或换行)。文件中的任何元数据仍将以base64编码的数据URI版本存在。
我在一个网站上使用数据URI图像。我这样做是因为用户通常只浏览网站上的一个页面即可获取他们所需的所有信息。在页面中内联所有CSS,JS和图像数据,可以显着提高性能。图像都很小,因此该技术效果特别好。
我的网站从Internet Explorer 7及更早版本获得了大量流量,这些流量不支持数据URI图像。因此,我必须有条件地为他们服务。我在服务器上也有图像,因此我选择基于User-Agent
标头的常规图像URL或数据URI 。我将漫游器(包括Googlebot)与IE 7相同,即,将图像用作HTTP URL。我这样做是因为包含数据uri图像会大大增加页面大小。大多数机器人不需要下载图像,因此对他们来说更有效。我还注意到Google Webmaster Tools报告说,启用了数据URI图像的Googlebot抓取我的网站的速度要慢得多。从技术上讲,这可以算是伪装,但这是获取数据URI图像索引的一种方法。
虽然Google在其自己的SERP上将图像用作base64编码的数据URI,但并未在其他网站上为此类图像编制索引。感谢@dan,他使我注意到了Google网上论坛的讨论,John Mueller在其中进行了解释。这也意味着,在此类图像中是否存在EXIF数据的问题并不重要。
这种解释清楚地表明,此性能优化技术更适合应用于哪些图像:小图像,例如图标,图标和按钮,以及那些图像,这些图像不会为网站的内容提供任何其他价值。
在另一个站点上,如果一个类别必须嵌入具有附加内容值的图像作为base64编码数据URI,则提供图像元数据的唯一最佳实践是使用Schema.org的标记,可以在其中协商EXIF数据,例如,一种标记。
像EXIF一样,另一种有前途的标记来协商看起来像“属性:值”的数据,目前具有投标状态。但是,来自Google博客的这篇文章显示了结构化的摘要,这些摘要可以由我上面链接的标记提案生成。