我知道有一个解决方案可以阻止mvc框架处理“favicon.ico”请求(solution),但我不知道为什么它首先要查找这个图标。
我使用文件中的查找>进行搜索favicon.ico
的整个解决方案,但未找到任何内容。
我搜索了favicon.ico
网站的html源代码,但没有找到任何内容。
它在哪里?为什么浏览器试图提供它?
答案 0 :(得分: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">
但是,“/ favicon.ico”是后备版,并且被许多旧浏览器使用 - 或者没有指定明确的快捷方式图标。
基本上:去创造一个。
答案 1 :(得分:4)
你最好有一个,因为大多数浏览器都是标准的寻找favicon.ico但是如果你真的不想拥有它并摆脱错误只需在RegisterRoutes类中添加这一行。
routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });
答案 2 :(得分:1)
默认情况下,某些浏览器只会在您网站的根目录中查找favicon.ico 我认为停止浏览器查找此文件的最简单方法是提供一次图像,然后浏览器将缓存它并停止询问。
答案 3 :(得分:0)
浏览器要求将其设置为页面的图标,标题旁边(标题栏,标签,书签菜单)。