web-dev-qa-db-fra.com

favicon non affiché par Firefox

Je [~ # ~] sais [~ # ~] sais que cette question a été posée au moins mille fois dans ce site Web seulement, mais j'ai lu Pour bon nombre de ces sujets, je me considère très compétent et je ne demande pratiquement jamais rien, je préfère faire mes propres recherches.

Cependant, cette question est si étrange, sans espoir de véritable illumination (puisque cette question a été discutée si souvent et que je ne pouvais toujours pas en tirer la lecture), voici ma question:

favicon.ico existe et (site Web de développement hébergé localement) http://website/favicon.ico affiche l'icône correcte. Sa taille est à peine 198 octets, donc la limite de taille que j'ai trouvée dans Firefox: une configuration de 1024 octets est respectée. Selon la sagesse sur les favicons sur le Web, le navigateur devrait demander lui-même des favicons quand il n'y a rien dans la page. Cependant, mon journal Apache indique clairement que Firefox (9.01) ne le demande même pas.

Suivant: quand j'ajoute

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

Je n'ai toujours pas de favicon.

Suivant: quand j'utilise plutôt

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

(notez la fin "?") Je me sens subitement [~ # ~] [~ # ~] obtenir un favicon. Mais ce ne peut pas être un problème de cache! Premièrement, j'ai effacé le cache, deuxièmement, comme je l'ai mentionné ci-dessus, j'ai déjà chargé avec succès le fichier d'icône dans Firefox via son URL http://website/favicon.ico

Je suis incapable d'expliquer ce comportement de Firefox. Chrome montre le favicon correct, en passant.

Ceci est la tête de ma page:

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <link rel="shortcut icon" href="/favicon.ico?" />
</head>
...

Dès que j'ajoute au moins le "?" après "ico" ça marche.

Voici ce que le serveur envoie lorsque l’icône est demandée, puisque certains l’ont demandé. Je ne sais pas pourquoi cela serait utile, car a) J'ai dit que mon cache était vide pour chaque test (vérifié avec à propos de: cache aussi), et b) J'ai dit que le serveur n'était jamais même demandé le fichier quand il ne s'affiche pas. Firefox ne demande tout simplement pas sans le "?" - avec cache vide! La demande apparaît dans le journal Apache UNIQUEMENT lorsque j'utilise le "?" Ajouté.

Date    Fri, 23 Dec 2011 12:53:22 GMT
Server  Apache/2.2.20 (Ubuntu)
Last-Modified   Fri, 23 Dec 2011 12:02:49 GMT
Etag    "12c07fe-c6-4b4c132190e30"
Accept-Ranges   bytes
Content-Length  198
Content-Type    image/x-icon
73
Mörre

Tout d'abord, assurez-vous de ne pas avoir de problème de cache "normal" en chargeant directement l'URL du favicon (placez-le dans la barre d'URL du navigateur) et forcez -le rafraîchissant. Si cela fait le travail, pas besoin de la solution compliquée ci-dessous.



IMPORTANT:

Mon problème initial ne pouvait pas être un problème de cache: Premièrement, je ai fait effacer le cache, deuxièmement, comme je l'ai mentionné ci-dessus, J'ai déjà chargé avec succès le fichier d'icône dans Firefox via son URL http://website/favicon.ico

Donc, je fais (ai) obtenir la bonne icône dans le navigateur une fois chargé directement! Mais j'ai toujours eu la mauvaise icône comme "favicon". Le chargement direct du fichier d’icône est (ou était) indépendant de l’affichage à l’emplacement actuel du favicon (sauf lorsqu’il est chargé pour la première fois de cours).

Cependant , si vous ne disposez que d'un problème de cache et d'actualisation forcée pour votre que cette question/question n'est pas à vous! Et votre réponse n’est pas une réponse pour ce problème.

Les gens ne doivent pas ignorer les faits. Lorsque vous êtes bombardé de nombreuses questions déjà répondues et/ou inutiles, la qualité de la question en souffre pour le moment et pour les archives également. C’est incroyable de voir comment je dois me battre avec des gens qui insistent toujours pour qu’un rafraîchissement forcé soit la solution !



Remarque: Vous pouvez entièrement éviter ce problème en utilisant une URL de cache-buster, comme le fait StackOverflow. Leur URL de favicon se termine par .../img/favicon.ico?v=4f32ecc8f43d.

Si les mesures normales d'effacement du cache échouent (comme ce fut le cas pour moi), une réponse est donnée ici: "Effacement de tous les favoris dans le cache de Firefox 3 [How-To]" - et voici une version archive.org du lien (probablement plus lente, mais elle ne disparaîtra pas) .

Les étapes de cette page reproduites ici:

  1. Installez le Firefox add-on SQLite Manager
  2. Lancer le depuis Outils -> SQLite Manager
  3. Cliquez sur l'élément de menu "Base de données" (en haut à gauche) et sélectionnez "Connecter une base de données", entrez %APPDATA%\Mozilla\Firefox
  4. Ouvrez le dossier Profiles et accédez au profil que vous utilisez.
  5. Sélectionnez places.sqlite comme fichier de base de données à éditer (Firefox 61 et versions ultérieures: favicons.sqlite)
  6. Soit choisir le moz_favicons table. Dans le menu contextuel du clic droit, utilisez "Table vide", n'utilisez pas "Drop table" (la table doit être présente) ou utilisez le menu contextuel par clic droit sur les données et sélectionnez "Supprimer" sur la seule entrée à supprimer (voir la capture d'écran ci-dessous).

screenshot deleting an entry using SQLite manager

J'ai commencé à soupçonner que Firefox mettait en cache les favicons dans le cache, ce qui était la seule explication correspondant au comportement observé. J'ai donc cherché sur Google pour confirmation et trouvé l'URL ci-dessus. Ensuite, je vais essayer de vider ce cache supplémentaire et de voir ce qui se passe.

UPDATE - RESOLU: Après la suppression du cache favicon à l'aide de l'add-on Firefox "SQLite Manager", tout fonctionne normalement.

Le secret était donc le CACHE FOR FAVICONS EXTRA (sqlite) dans Firefox, QUI IS NON EFFACÉ PAR LA COMMANDE RÉGULIÈRE "Vider le cache".

Mise à jour de mars 2017: j'ai vérifié cette extension Firefox et aussi l'application autonome suggérée dans la réponse ci-dessous et les deux font le travail. Le module complémentaire SQLite Manager a été mis à jour pour la dernière fois il y a environ 2 ans selon son page du projet Github , mais il fait toujours ce dont il a besoin dans ce contexte. Des mises à jour sont disponibles à partir de personnes qui ont lancé le projet , mais ce n'est qu'un aparté.

132
Mörre

était confronté à un problème similaire. Il suffit de casser le cache de l'image. J'utilise MVC Razor View.

    var link = document.createElement('link');
    link.type = 'image/x-icon';
    link.rel = 'shortcut icon';
    link.href = "/images/[email protected]";
    var head = document.head || document.getElementsByTagName('head')[0];
    head.appendChild(link);
3
gokul

Voici comment faire sans perdre tous les favicons

  1. Obtenir un outil qui peut ouvrir le fichier SQLite, j'utilise navigateur DB pour SQLite

  2. aller à about:profiles dans votre navigateur.

  3. ouvrez le dossier racine de default profile. (voir l'image ci-jointe pour des indices) image

  4. open places.sqlite (favicons.sqlite sur Firefox 61+).

  5. aller à moz_favicons table

  6. filtrer et supprimer l'entrée correspondant à votre nom d'hôte (voir l'image ci-jointe pour obtenir des conseils) image

  7. sauvegarder le fichier (voir image) image

  8. visitez votre site Web, il affichera un nouveau favicon

3
Suraj Nath

Il y a longtemps, je le sais, mais la procédure d'effacement du cache sur FF 31.0/Windows fonctionne pour moi - c'est peut-être nouveau. Options -> network -> cached web content -> clear now. Arrêtez FF, redémarrez. Pas de problème avec SqLite, nouvelles charges de favicon.

Cependant, il existe un autre problème potentiel. Le serveur du site pour lequel j’essayais d’actualiser l’icône avait un DocumentRoot de /var/www. Ce site était à foo.com/fubar, où var/www/fubar _ symlinked to else else. En d'autres termes, le site est à un niveau inférieur de DocumentRoot. Cela fonctionne pour Chrome, Opera et IE, mais pas Safari ou FF:

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

FF cherche le favicon dans /var/www, au lieu de /var/www/fubar. Cela fonctionne pour tous les 5 navigateurs:

<link rel="shortcut icon" href="favicon.ico" >
2
EML