网站图示检查
检查网站的 favicon 是否符合 Google 搜索的要求:正方形、至少 8×8 像素、以支持的 rel 宣告,且 Googlebot-Image 能够检索。
这里的每一条规则都来自 Google 官方的网站图标文档,而非坊间说法。
这个工具需要服务器。浏览器不被允许读取其他网站的源码,因此由我们的服务器获取页面、只读取其 <head> 并回报结果。你输入的网址会送到我们的服务器;检查内容不会被存储。
这个工具做什么
输入网站地址,这个工具会取得该页面、找出它宣告的每一个图示、下载回来,并逐一比对 Google 公布的 favicon 要求,然后告诉你找到了什么、哪些通过、哪些会让图示无法显示。
在浏览器分页上看起来完美的 favicon,仍然可能不会出现在 Google 的搜索结果里。浏览器很宽容 —— 长方形、没有宣告的文件、藏在转址后面的图示,它都照收。Google 不会。
Google 实际上要求什么
以下是 Google 官方明文列出的规则,不是坊间传闻:
| 要求 | 说明 |
|---|---|
| 正方形 | 1:1 的长宽比。这是最严格的一条 —— 长方形图示根本不会被采用 |
| 至少 8×8 像素 | 下限。Google 建议大于 48×48 像素,一般也建议使用 48 的倍数 |
支持的 rel | icon、shortcut icon、apple-touch-icon 或 apple-touch-icon-precomposed |
| 可被检索 | Googlebot-Image 必须能取得图示,Googlebot 必须能取得首页,两者都不可在 robots.txt 中被封锁 |
| 网址固定 | Google 希望 favicon 的网址不要经常变动 |
| 每个网站一个 | 这里的「网站」指主机名称。子目录无法拥有自己的图示 |
Google 另外会拒绝显示它判定为色情或仇恨的图示,并以默认的地球图示取代。
为什么图示存在却不显示
依实际发生的频率大致排序:
- 它不是正方形。 一张 32×16 的商标裁切是最常见的单一原因。浏览器会乐意缩放它,Google 则直接略过。
robots.txt把它挡住了。 多年前为了别的目的写下的Disallow: /assets/,如今把图示 也一并涵盖。页面的原始码完全看不出这件事,所以它往往很久都没被发现 —— 这个工具会明确 检查这一项。- 它太小了。 一个 16×16 的
favicon.ico虽然过了 8 像素的门槛,却远低于 Google 建议的 48 像素,在任何显示它的地方都会显得模糊。 - 什么都没宣告。 Google 仍会依惯例找到
/favicon.ico,但<link rel="icon">才是可靠 的作法。 - 网址一直在变。 建置流程若把内容杂凑值写进图示档名,等于每次部署都给 Google 一个新网址, 而它要求的是固定网址。
- 它只是还很新。 Google 依自己的排程重新检索 favicon,可能要数周。昨天才修好的正确图示 也许只是还没被重看 —— 这个工具告诉你图示本身没问题,不代表 Google 已经再看过一次。
一份好的宣告长什么样
<link rel="icon" href="/favicon.ico" sizes="32x32">
<link rel="icon" href="/icon.svg" type="image/svg+xml">
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
.ico 档可以同时容纳多种尺寸,这个工具会列出它宣告的每一个尺寸,而不只是最大的那个。SVG
是有效的 favicon 格式,检查方式相同;只是真正可缩放的 SVG 不会标明像素尺寸 —— 这会被列为
说明,而非缺失。
有哪些数据会送到我们的服务器
只有你输入的网址。我们的服务器会取得该页面、只读取它的 <head>,接着取得它指名的图示与
robots.txt。检查内容不会被储存,页面的原始码也不会返回到你的浏览器 —— 返回的只有找到的
图示清单与判定结果。
这是本站少数需要服务器的工具之一。浏览器不被允许读取其他网站的原始码,而图示必须从它自己的
字节去量测,才能知道真正的尺寸,而不是 sizes 属性所宣称的尺寸。
指向私人网络的地址会被拒绝而不会被取得,包括任何由转址所导向的地址。
相关工具
如果你要的是制作图示而非检查图示,网站图示产生器可以从单一张图片产出整组文件。