Asp.net Mvc:为什么浏览器在寻找favicon.ico

Cat*_*lin 13 c# asp.net asp.net-mvc asp.net-mvc-4

我知道有一个解决方案可以阻止mvc框架处理"favicon.ico"请求(解决方案),但我不知道为什么它首先要寻找这个图标.

我使用查找文件>整个解决方案搜索favicon.ico,没有找到任何内容.

我搜索了网站的html源代码,favicon.ico没有找到任何内容.

它在哪里?为什么浏览器试图服务它?

Mar*_*ell 12

favicon.ico是一种约定 - 但是浏览器可以获取链接,标签等图像的一种方式:

在此输入图像描述

请注意,现在,图像位置也可以在元数据中设置(这是方便的,因为它允许图像是每页而不是每个域,和/或允许从不同位置(例如CDN)提供图像):

<link rel="shortcut icon" href="//cdn.sstatic.net/stackoverflow/img/favicon.ico">
<link rel="apple-touch-icon image_src" href="//cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png">
Run Code Online (Sandbox Code Playgroud)

但是,"/ favicon.ico"是后备,并且被许多旧浏览器使用 - 或者没有指定明确的快捷方式图标.

基本上:去创造一个.


Job*_*mno 5

最好有一个,因为对于大多数浏览器来说,查找favicon.ico是标准的。但是,如果您确实不想要favicon.ico并消除错误,只需在RegisterRoutes类中添加此行即可。

routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });
Run Code Online (Sandbox Code Playgroud)