我在Content文件夹(而不是根目录)along these lines中使用favicon设置了我的ASP.NET MVC应用程序。这很有效,favicon在所有浏览器中都会显示。
然而,当我安装ELMAH时,我开始看到404错误,因为显然仍然在我网站的根目录中请求了favicon!我很想知道为什么会这样,以及这是谁。假设我的浏览器导致这种情况,我打开了开发人员工具栏,这是我发现的:
Google Chrome:
Internet Explorer 9:
火狐:
他们都显示了9个类似的请求,但是没有一个显示favicon.ico请求...... 我预计至少有一个(在我的浏览器中看到的Content文件夹中的一个,甚至两个(也就是给我ELMAH中的404的那个)。
所以,我的问题 :任何人都可以解释为什么开发人员工具栏通常不显示favicon请求?这可以以某种方式打开或在某处看到吗?
答案 0 :(得分:26)
默认情况下,所有浏览器都会提取/favicon.ico
,以便在地址栏,标签,书签等中使用它。这只是一种惯例(和W3C doesn't like it)。
使用Chrome,您可以在此处看到此请求:chrome://net-internals/#events
。
您可以使用<link rel="shortcut icon"
href="http://test.com/myicon.ico" />
部分中的<head>
HTML标记覆盖图标。这似乎阻止Chrome检查默认位置。但是,即使设置了此标记,Chrome DevTools也不会将favicon.ico
显示为在页面加载期间下载的资源。原因可能是网站不使用favicon,浏览器使用它。浏览器根据自己的目的请求它。
[编辑] 有一个打开的Chrome issue将网络面板中的favicon.ico
分类为错误。
[编辑] 它在Firebug中也是bug。