为什么不在Firefox中加载favicon?

时间:2009-08-23 22:36:28

标签: html favicon

我使用以下内容:

<link rel="shortcut icon" href="/images/favicon.ico" />

这是一个真正的'ico'。当我访问http://mydomain.com时,图标会加载。但是当我访问'www'子域名时:www.mydomain.com ...它将无法加载。有什么想法发生了什么?

12 个答案:

答案 0 :(得分:15)

我发现我必须清除我的Firefox缓存[CTRL] + [SHIFT] + [DEL],然后在我看到favicon之前重新启动Firefox,我将它放在Web服务器的根目录中并称为favicon。 ICO。

请注意,在最新版本的Firefox中,favicon仅显示在标签图标和书签上,不在地址栏图标中。

enter image description here

答案 1 :(得分:10)

这是一个更大的firefox错误的一部分。如果我在mysite.com并说link rel="shortcut icon" href="/myicon.ico"它有效。但这是它运作的唯一方式。如果我在mysite.com并说link rel="shortcut icon" href="myicon.ico"或任何其他相关链接,它将失败。但是,如果我在www.mysite.com并使用相关链接,他们的工作正常。此外,如果我在mysite.com并说link rel="shortcut icon" href="http://www.mysite.com/mypath/myicon.ico"它有效。 Firefox已经忘记了如何处理www.mysite.com是mysite.com的网站。它曾经工作过,现在已不复存在了。您还可以看到,如果您在www.mysite.com和mysite.com之间切换,链接将从“已访问”更改为“未访问”样式。 FF在这个版本上被打破,现在已经有几个版本了,但是一旦它运行了。

答案 2 :(得分:3)

这听起来像是一个配置问题,如果没有更多信息我们无法解决。您是否尝试使用绝对URL而不是相对URL?

示例:

<link rel="shortcut icon" href="http://mydomain.com/images/favicon.ico" />

答案 3 :(得分:3)

出于安全原因,地址栏中不再使用地图栏,而是从firefox 15开始,但仍然在标签和书签等中使用

请参阅http://www.ghacks.net/2012/04/25/mozilla-to-remove-favicons-from-firefox-url-bar/

答案 4 :(得分:2)

这是Firefox当前处理favicon文件缓存的结果。要解决你有几个选择:

添加GET参数

您可以将任意GET参数和值添加到favicon URI的末尾

提示:当您要确保用户的浏览器未提供本地缓存版本时,此技巧可用于任何其他css / js文件。)

<link rel="shortcut icon" href="/images/favicon.ico?updated=20150818" />

重命名文件

重命名您的favicon文件,并在您的href属性中引用重命名的文件。

<link rel="shortcut icon" href="/images/favicon_version_2.ico" />

硬刷新

如果您只关心更新本地计算机图标,则硬刷新可能适用于某些浏览器。通常 Ctrl + Shift + R Ctrl + F5 适用于Windows / * NIX和 Mac上的Command + R Command + Shift + R 可以解决问题。

说明:最终结果是您需要强制浏览器提取文件的新副本,而不是使用本地缓存的文件。在文件URI的末尾添加?somevariable = uniquevalue 会诱使您的浏览器认为它正在处理新文件,并且新文件本质上无法缓存。重命名文件时会产生相同的效果。

额外的书呆子技术说明:使用GET参数值的时间戳或唯一文件版本号是最好的,因为它会鼓励变量唯一性。如果用户已经使用完全相同的GET参数和值(在我的示例中?updated = 20150818 )加载了该URI,浏览器将无法提取新副本,因为它可能会理解它仍然是处理同一个文件。

根据URI中的GET参数缓存文件的选项是浏览器特定的,因为规则在某种程度上由浏览器供应商决定,以区分它们如何处理特定的缓存实例(请参阅http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.9处的RFC) 。因此,请记住,如果您使用日期作为值,在某些浏览器中可能会出现这种情况,如果您在一天中多次更改文件,则可能还需要包括时间。

答案 5 :(得分:1)

您可以尝试将图标放到根目录。

答案 6 :(得分:0)

href="/images/favicon.ico"
中的第一个斜线可能导致问题?

答案 7 :(得分:0)

你试过吗

<link rel="shortcut icon" href="images/favicon.ico" />

? www子域名的目录结构是什么?您可以使用绝对路径访问其他图像文件吗?

答案 8 :(得分:0)

Fireworks通常会在没有任何代码的情况下自动获取favicon.ico文件,只要它与文档的文件夹相同即可。尝试将文件上移一级以避免引用问题。

答案 9 :(得分:0)

这个问题很烦人...... 我通常只需添加一个16x16 PNG图标来解决这个问题。 Firefox处理favicons的方式似乎有点奇怪,对我来说,解决方法是最简单的。 希望这会有所帮助。

答案 10 :(得分:0)

Firefox在您网站的根文件夹中查找“ favicon.png”而不是“ favicon.ico”。我建议同时包括这两种功能,以便与更多浏览器兼容。

答案 11 :(得分:0)

对我来说,在标头中放置两个链接引用很有效。
FF在添加第二行之前不显示图标

  <!-- browser icon -->
<link type="image/x-icon" href="/favicon.ico"  rel="shortcut icon"  >
<link type="image/x-icon" href="/favicon.png"  rel="shortcut icon"  >

在第一个/中删除或保留对FF处理图标的方式没有影响。 控制台报告了

[Exception... "Favicon at "https://<myhost>/favicon.ico" failed to load: 
Forbidden."  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: 
resource:///modules/FaviconLoader.jsm :: onStopRequest :: line 227"  data: no]

但是它仍然加载了.png文件,而没有在浏览器窗口中抱怨。