开发者工具栏的网络选项卡中没有显示Favicon请求。

14 浏览
0 Comments

开发者工具栏的网络选项卡中没有显示Favicon请求。

我在Content文件夹中(而不是根目录)设置了我的ASP.NET MVC应用程序的favicon。这很有效,favicon在所有浏览器中都显示正常。\n然而,当我安装ELMAH后,我开始看到404错误,因为显然favicon仍然在我的网站根目录下被请求!我想知道为什么会发生这种情况,以及是谁在做这个请求。在我认为是浏览器引起的情况下,我打开了开发者工具栏,以下是我发现的内容:\nGoogle Chrome:
\n\"Chrome中的开发者工具栏,网络选项卡\"\nInternet Explorer 9:
\n\"IE9中的开发者工具栏,网络选项卡\"\nFirefox:
\n\"Firefox中的开发者工具栏,网络选项卡\"\n所有浏览器都显示了9个相似的请求,但是它们都没有显示任何favicon.ico请求......我本来希望至少会有一个(在Content文件夹中的那个,在浏览器中我能看到),甚至可能有两个(也是给我ELMAH中的404错误的那个)。\n所以,我的问题是:有人能解释为什么开发者工具栏通常不显示favicon请求吗?是否可以通过某种方式打开或查看它们?

0
0 Comments

Favicon请求在开发者工具的网络选项卡中不显示的问题出现的原因是浏览器默认会请求/favicon.ico来用于显示在地址栏、标签页、书签等位置。这是一种约定,但是W3C并不喜欢这种约定。

在Chrome浏览器中,可以通过chrome://net-internals/#events来查看这个请求。

通过在标签中使用<link rel="shortcut icon" href="http://test.com/myicon.ico" /> HTML标签可以覆盖默认的图标位置。然而,即使设置了这个标签,Chrome开发者工具也不会显示favicon.ico作为整个页面加载过程中下载的资源。这个问题的原因可能是favicon不是网站使用的,而是浏览器使用的。浏览器为了自己的目的而请求这个图标。

[编辑] Chrome中有一个未解决的问题,将Network面板中缺失的favicon.ico分类为一个bug。

[编辑] 这也是Firebug中的一个bug。

谢谢,这对我来说很有意义。这也确实帮助我找到了我的ELMAH 404错误:实际上是浏览器在寻找ELMAH axd处理程序页面的favicon(与MVC应用程序相比,这个页面并没有问题)。

更新:net-internal事件现在已被移除。请使用chrome://net-export来保存网络日志,并使用外部的netlog_viewer来查看它们。

0