为什么我的网站没有图标
出现在IE7中?
这是重新发布的
最初发表于的帖子
2007年3月1日。原来可以找到here http://securitygarden.blogspot.com/2007/10/missing-favicon-in-ie7.html。该版本已更新至
符合目前的现实。
当我在微软时,我是
开发人员负责修复
IE7 的 Favicon 故事。原本的
IE6 的行为是下载
网站图标一次——当用户创建网站时
最喜欢的。我也不想去
深入了解如何做到这一点的细节
疯狂是有效的,但关键是
信息以了解其原因
看起来很破碎的是:映射
网站 url 之间的 url
因为该网站的 Favicon 将被存储
在 IE 的历史数据库和
实际上图标的一部分是
存储在临时 Internet 文件中
文件夹。因此,如果您清除了
历史记录或您的缓存,或该项目
任一图标均已过期
将会永远消失。
快进到 IE7。已经结束了
自 IE6 发布以来已有两(三年?)年了。
我们想要实现标签式浏览,
我们希望选项卡显示
正确的网站图标。所以我更新了
始终下载的 Favicon 代码
首次访问时的图标。代码还
记住是否没有 Favicon (404)
或者它在某种程度上是无效的
(ExtractIcon() 失败)。
这是一个迷你常见问题解答(还有一个奖励
问题在最后)我写的
当我在微软时:
Q:如何让网站图标出现
我的网站在 IE7 中?
A:有两种方法。
第一个是在根目录下放置一个文件
您的域名名为favicon.ico
。这
第二是使用<link>
标签与rel="shortcut icon"
值和 href
值设置为您的图标的 URL
希望显示。
Q:IE 多久下载一次
网站图标?
A:IE会下载图标
当用户第一次访问该网站时。这
图标存储在临时文件中
客户端上的 Internet Files 文件夹
机器。有关的附加元数据
favicon 存储在用户的 Url 中
历史数据库。如果任一商店
已清除或与此相关的项目
favicon自然就过期了,那么
该图标将再次下载
下次访问。如果超过一页
(或网站)共享相同的图标,它
仅下载一次。 IE 采取
费尽心思将图标下载为
尽可能少几次,以减少负载
在服务器上。
Q:我发现有些人的网站图标有误
我访问的网站。我该如何解决?
A:如果历史数据库变成
以某种方式损坏,这可以
发生。最简单的解决方案就是
使用删除浏览历史记录(在
工具菜单)清除缓存和
历史商店。
Q:我在我的网站上放置了一个 favicon.ico 作为
你描述了,但仍然没有
出现。
A:它实际上必须是 .ico
(图标)文件。位图、png、gif、
等等,将不起作用。 IE7会下载
您的网站图标到临时互联网
文件夹及调用ExtractIcon() http://msdn2.microsoft.com/en-us/library/ms648068.aspx在
文件。如果失败,我们将显示
默认图标而不是您的
网站图标。
Q:我验证了我的图标确实
是一个图标,但仍然没有
出现。
A:由于 IE 加载了你的图标
从临时 Internet 文件中
文件夹,它必须能够实际
将其存储在那里。如果您正在设置
图标文件的无缓存指令,
那么IE将无法显示
您的图标,并将显示默认值
图标代替。您可以使用Fiddler http://www.fiddlertool.com/fiddler/到
核实。
Q:如何创建不同的网站图标
我网站上的每个页面?
A:放一个
每页有不同的标签,指向
到不同的图标。
Q:我将网站的图标更改为
图标不同,但还是旧的
在 IE 中显示。如何强制 IE
更新?
A:如果你只是把
favicon.ico 文件位于您的根目录中
域名,IE没有任何办法
知道它是否改变。强制
更新,您需要使用标签和
指向与您不同的文件名
以前使用过。当前文件名
与已知文件名进行比较
存储在 URL 历史数据库中。
当 IE 看到文件名已更改时,
它将下载您的新图标。
或者,您可以询问您的用户
清除他们的历史记录和缓存
(工具->Internet 选项->删除
浏览历史记录),这也将
强制 IE 下载新文件。
Q:什么还坏了?
A:二
事物:
- 如果您指定一个
通过标签替代位置,
href 成员必须是完全合格的
并且不尊重标签。
- 标签必须有“快捷方式
icon”作为rel值,但是这是在
违反了 W3C 规范:
rel 标签中的空格表示
值列表。 IE对待“快捷方式
图标”作为单个值。幸运的是,这个
仍然适用于其他浏览器
“捷径”,忽略它,只付费
注意“icon”字符串。
这应该涵盖了大部分
我收到的有关网站图标的问题
在IE7中。如果您还有更多疑问,
请随时询问。