Wie erzwinge ich eine Favicon-Aktualisierung?

1535

Ich habe eine Grails-Anwendung, die lokal mit einem eigenen Tomcat ausgeführt wird, und ich habe gerade das Favicon gegen ein neues ausgetauscht. Problem ist, dass ich es in keinem Browser sehen kann. Das alte Favicon wird angezeigt oder ich bekomme überhaupt kein Favicon, aber nicht mein neues. Ich denke nicht, dass dies per se ein Grails-Problem ist, sondern eher ein Problem mit Favicons.

Was soll mit Favicons passieren? Wie sollen sie arbeiten? Ich habe zahlreiche Lesezeichen in meinem Browser, die die falschen Symbole haben und die scheinbar nie aktualisiert werden. Wie zwinge ich den Server / Browser, das Zwischenspeichern zu beenden? Es scheint ziemlich dumm, sie immer zwischenzuspeichern, da sie normalerweise nur 16x16 sind. Warum laden Sie sie nicht einfach bei jedem Besuch der Seite hoch? Es ist nicht gerade ein riesiger Aufwand.

Simon
quelle
12
Die akzeptierte und hoch bewertete Lösung ist NICHT die echte Lösung. Der eigentliche Grund, warum die Aktualisierung nicht funktioniert, finden Sie in der Lösung dieser Frage: stackoverflow.com/questions/8616016/… --- Der Symbol-Cache befindet sich in einer SQLite-DB-Datei, unabhängig vom Browser-Cache!
Mörre
8
Die akzeptierte und hoch bewertete Lösung ist eine Lösung für die Produktion, oder soll ich ein Tutorial für Benutzer schreiben, wie sie ihren Favicon-Cache leeren können, wenn wir Favicon für die Produktion aktualisieren?
Miroslav Saracevic
2
Ist keine allgemeine Lösung. Was ist, wenn Sie den Standardspeicherort von Favicon verwenden, ohne Ihren Code zu berühren? Das heißt, eine favicon.icoDatei in Ihrem Dokumentstamm.
Sebastian
7
xkcd.com/1854
Sudo Bangbang

Antworten:

2089

Um das Favicon Ihrer Site zu aktualisieren, können Sie Browser zwingen, eine neue Version herunterzuladen, indem Sie das Link-Tag und einen Querystring in Ihrem Dateinamen verwenden. Dies ist besonders in Produktionsumgebungen hilfreich, um sicherzustellen, dass Ihre Benutzer das Update erhalten.

<link rel="icon" href="http://www.yoursite.com/favicon.ico?v=2" />
Kennzeichen
quelle
35
Das hat den Trick für mich getan. Ich musste im type="image/x-icon"Gegensatz zu vielen Quellen aus meinem Code entfernen . Ich habe einen dateimodifizierten Zeitstempel für den v?=2Teil der Abfrage verwendet.
Wertisdk
10
Ich habe festgestellt, dass in einigen Browsern das Favicon kein Update durchgeführt hat, egal was passiert, es sei denn, ich habe den Verlauf gelöscht. Dann wird das neue Favicon gespeichert.
Pathfinder
6
Leider benötigen Sie die vollqualifizierte absolute URL für IE7 (& IE8?) - siehe jeffcode.blogspot.com.au/2007/12/…
eug
5
stimme den obigen Kommentaren zu, aber dies funktioniert für mich in allen aktuellen Browsern: <link rel = "Verknüpfungssymbol" href = "/ favicon.ico? v = 2" />
Dave Sumter
31
Es ist sinnvoll, Favicons zwischenzuspeichern, da sie manchmal 2-3 Kilobyte groß sind. Sie möchten nicht all diese Daten weiter übertragen. (Ja, Sarkasmus)
Flat Cat
824

Ok, nach 10 Minuten des Versuchs ist der einfache Weg, es zu reparieren, nahe an dem der Vogelreihe

  1. Geben Sie www.yoursite.com/favicon.ico (oder www.yoursite.com/apple-touch-icon.png usw.) ein.
  2. drücken enter
  3. ctrl+f5
  4. Starten Sie den Browser neu (IE, Firefox)
Alex
quelle
8
Mit dieser Methode würden Sie wahrscheinlich das Caching überwinden, Ihre vorhandenen Benutzer jedoch nicht. Daher finde ich die andere Antwort wertvoller.
Demircan Celebi
3
Erwähnenswert ist, dass dies in Firefox 33 nicht funktioniert. Die erste Antwort ist eine bessere Wahl.
Brent Waggoner
1
Ich musste Entwickler-Tools schließen, damit dies in Chrome funktioniert.
Tehwalris
1
Ich musste den Browser nicht neu starten, aber ich musste in einem Tab ohne geöffnete devtools zu meiner Website navigieren. Aus irgendeinem Grund hat es Strg + F5 in einem Nicht-Devtools-Tab getan. Ich konnte Strg + F5 alles, was ich wollte, und über das Internet und zurück zu meiner Site navigieren, so oft ich wollte, und es würde das Favicon niemals aktualisieren.
Mjohnsonengr
3
Der Teil "Browser neu starten" war das einzige, was es für mich tatsächlich zum Laufen gebracht hat. Alle anderen Korrekturen funktionieren theoretisch, ändern jedoch nicht die auf der Registerkarte "Browser" angezeigten Favicon-Pixel. +1 diese Antwort
b264
262

Diese Antwort wurde noch nicht gegeben, also dachte ich, ich würde sie posten. Ich habe mich im Internet umgesehen und keine gute Antwort gefunden, um Favoriten in der lokalen Entwicklung zu testen.

Wenn Sie in der aktuellen Chrome-Version (unter OSX) Folgendes tun, erhalten Sie sofort eine Favicon-Aktualisierung:

  1. Bewegen Sie den Mauszeiger über die Registerkarte
  2. Rechtsklick
  3. Wählen Sie Reload
  4. Ihr Favicon sollte jetzt aktualisiert werden

Dies ist der einfachste Weg, das Favicon lokal zu aktualisieren.

Garry Polley
quelle
1
Leider funktioniert dies nicht im Internet Explorer oder sogar in Chrome unter Windows. Daher sollten Sie die akzeptierte Antwort verwenden, es sei denn, Sie verwenden Chrome nur unter OSX.
Christopher King
3
Funktioniert in OS X Sierra mit Chrome 53.0.2785.143 (64-Bit)
Seno
1
funktioniert für mich: Chrome 58.0.3029.110, Windows 10, localhost
R Brill
1
Arbeitete unter Chrome 63.0.3239.84 für Windows 10!
Beawolf
4
Funktioniert in Chrome 67.0 unter OSX. Seltsamerweise funktioniert es nicht mit CMD+ Shift+R
cephei_vv
56

Benennen Sie die Favicon-Datei um und fügen Sie einen HTML-Header mit dem neuen Namen hinzu, z.

<link rel="SHORTCUT ICON" href="http://www.yoursite.com/favicon2.ico" />
Klaus Byskov Pedersen
quelle
4
Ich würde annehmen, dass der Browser sehen kann, ob der Name des Favicons der gleiche ist. Wenn dies der Fall ist, wird der Download nicht erneut angefordert und es wird ein bereits zwischengespeicherter verwendet. Wenn Sie jedoch den Namen ändern, wird davon ausgegangen, dass er sich geändert hat, sodass er vom Server angefordert wird.
Bojan Kogoj
Ich hatte das Problem mit dem IE8. Das in einem Unterordner abgelegte favicon.ico wurde nicht verwendet. Durch Hinzufügen des rel-Attributs 'Verknüpfung' wurde das Problem behoben.
TienbuiDE
3
Das ist überhaupt nicht erfrischend, es ändert es komplett in ein neues.
Zac
Bitte beachten Sie, dass Sie auch Ihre eigentliche favicon.ico umbenennen müssen (sie befindet sich in Ihrem Build-Ordner oder in dem Verzeichnis, aus dem die Webanwendung bereitgestellt wird)
Rahil Ahmad
55

Wenn Sie PHP verwenden, können Sie auch den MD5-Hash des Favicons als Abfragezeichenfolge verwenden:

<link rel="shortcut icon" href="favicon.ico?v=<?php echo md5_file('favicon.ico') ?>" />

Auf diese Weise wird das Favicon immer aktualisiert, wenn es geändert wurde.

Wie in den Kommentaren erwähnt, können Sie anstelle des MD5-Hash auch das Datum der letzten Änderung verwenden, um dasselbe zu erreichen und ein wenig an Serverleistung zu sparen:

<link rel="shortcut icon" href="favicon.ico?v=<?php echo filemtime('favicon.ico') ?>" />
Felix Wienberg
quelle
2
Schön, das vermeidet die Notwendigkeit, die href jedes Mal zu ändern, wenn ich das Favicon aktualisiere. Diese Antwort sollte mehr Stimmen haben!
Sven van den Boogaart
44
Das Problem bei dieser Antwort ist, dass Sie diesen Hash bei jeder Anfrage berechnen. Dies ist unnötig und kann die Leistung der Website beeinträchtigen (wenn viele Benutzer anwesend sind).
Diego Jancic
1
In beiden Richtungen ist es keine so große Sache ... ein Favicon ist nur ein paar Kilobyte ... Ich meine, es wird den Server nicht weniger belasten, als jedes Mal das Favicon bedienen zu müssen ...
Philippe Gilbert
14
Ich sehe immer noch keinen wirklichen Grund, den MD5 zu berechnen. Es ist einfacher und genauso effektiv, das Datum der letzten Änderung der Datei zu verwenden. Ich sehe keinen Vorteil darin, den MD5 gegenüber dem zuletzt geänderten Stempel zu verwenden.
NickG
9
Wie oft aktualisieren Sie Ihr Favicon wirklich? Das scheint übertrieben. Verwenden Sie einfach die manuelle Abfragezeichenfolge, wenn Sie ein neues Symbol erstellen.
Nullen und Einsen
51

Indem Sie die Datei zerstören, in der Ihr Browser alte Favoriten speichert, können Sie das Laden neuer erzwingen.

  1. Schließen Sie Ihren Browser. Stellen Sie sicher, dass keine Browserprozesse mehr ausgeführt werden (z. B. überprüfen Sie den Task-Manager auf chrome.exeoder firefox.exe).
  2. Navigieren Sie zu dem Ort, an dem Ihr Browser Benutzerdateien speichert:
  3. Löschen Sie den Favicon-Cache.
    • Entfernen Sie für Chrome FaviconsundFavicons-journal
    • Entfernen Sie für Firefox favicons.sqlite

Dies wird fast definitiv funktionieren. Wenn nicht:

  • Möglichkeit 1: Ein Update Ihres Browsers hat die Funktionsweise des Favicon-Cache geändert. Bitte bearbeiten Sie diese Antwort mit neuen Anweisungen.
  • Möglichkeit 2: Ihr Favicon-Problem hat nichts mit überaggressivem Caching zu tun. Möglicherweise handelt es sich stattdessen um ein Problem beim Laden von Ressourcen. Stellen Sie mithilfe der Entwicklertools sicher, dass das neue Favicon ordnungsgemäß heruntergeladen wird.
Konzo
quelle
Das hat den Trick gemacht. Für mich war dies ein Problem mit dem Favicon der Google Chrome-Anwendung. Kein DOM-Favicon-Problem.
Klewis
2
Dies ist eine gute Antwort, die meine Testanforderungen erfüllt. Es gibt keine wirkliche Antwort auf diese Frage, da es davon abhängt, wer sie aktualisieren muss und was sie bereit und in der Lage sind, vernünftigerweise zu tun.
Dovev Hefetz
1
Nur eine kleine Verbesserung: Der gleiche Pfad für jeden Benutzernamen ist%appData%/../Local/Google/Chrome/User Data/Default
Josemmo
3
Eine einfachere Lösung in Chrome besteht darin, mit der rechten Maustaste zu klicken und Inspizieren (oder STRG + UMSCHALT + I) auszuwählen. Klicken Sie dann auf die Schaltfläche Aktualisieren und halten Sie sie gedrückt. Ein Menü mit der Option Aktualisieren, Hard Reload oder Leerer Cache und Hard Reload wird angezeigt. Normalerweise reicht Hard Reload aus, aber wenn es aus irgendeinem Grund hartnäckig ist, werden Empty Cache und Hard Reload dies definitiv tun.
Felwithe
1
Unter Linux finden Sie diese Dateien unter:~/.config/google-chrome/Default
Arnold Schrijver
29

In Chrome unter Mac OS X kann man Dateien mit Favicon-Cache entfernen

${user.home}/Library/Application Support/Google/Chrome/Default/Favicons 
Maxim Mazin
quelle
1
Diese Lösung hat bei mir funktioniert. Aus irgendeinem Grund wurde das Favicon mit den oben genannten Methoden nicht mit weitaus mehr Stimmen aktualisiert. Also danke, Maxim Mazin. Ich wollte nur ein altes Favicon loswerden, von dem ich wusste, dass es auf meinem neuen Host nicht mehr existieren kann.
Tsaulic
2
Dieser Ansatz funktionierte auch für mich unter Windows, wo ich das Favicon aus meiner App entfernt hatte, aber Chrome zeigte es immer noch an. Schließen Sie Chrome, löschen Sie "C: \ Benutzer \ {Benutzer} \ AppData \ Local \ Google \ Chrome \ Benutzerdaten \ Standard \ Favicons" und starten Sie Chome neu. Das alte unerwünschte Favicon ist weg.
Skomisa
2
Ich hatte nichts unter "Standard", aber schließlich fand ich diese Variation:${user.home}/Library/Application Support/Google/Chrome/Profile 1/Favicons
Mdahlman
@mdahlman Das hat bei mir zunächst nicht funktioniert, nachdem ich alle anderen Methoden ausprobiert hatte. Ich habe diesen jedoch zum cmd+qLaufen gebracht, nachdem ich Chrome verwendet habe, in die Menüleiste gegangen bin , das erneute Beenden von Chrome erzwungen habe und 2 Minuten gewartet habe, um den Browser zu öffnen und zurück zu meiner Site zu navigieren.
PrimeTimeTran
17

Nun, Overhead ist Overhead, aber ja, nicht zu groß.

Außerdem sind Browser manchmal "gierig" nach zwischengespeicherten Dateien. Sie können den Cache leeren und / oder Ihren Browser neu starten und möglicherweise die Änderung sehen. Wenn das aber fehlschlägt ...

Meine billige Lösung ist:

  1. Besuchen Sie Ihre Datei unter http://example.com/favicon.ico in Ihrem Browser.
  2. Löschen Sie die Datei favicon.ico von Ihrer Webroot.
  3. Besuchen Sie http://example.com/favicon.ico erneut in einem Browser und überprüfen Sie, ob es fehlt.
  4. Laden Sie eine neue auf Ihre Webroot hoch.
  5. Besuchen Sie http://example.com/favicon.ico erneut in einem Browser und überprüfen Sie, ob es sich um den neuen handelt.

Wenn diese Sequenz nicht funktioniert, ist etwas anderes los.

artlung
quelle
7
Das hat bei mir funktioniert, aber leider können wir nicht jeden Besucher darum bitten.
talentierte
3
Besuchen Sie example.com/favicon.ico und drücken Sie Strg + F5 / Strg + Umschalt + R, was mehrmals für mich funktioniert hat :) Danke für die Idee!
Alfonso Nishikawa
17

Abhängig vom Browser werden sie unterschiedlich behandelt, aber normalerweise finde ich, dass ich zur Standardseite der Site gehe und eine harte Aktualisierung durchführe. CTRL+ F5, wird es normalerweise zum Aktualisieren bringen.

Mitchel Sellers
quelle
Mac-Benutzer: CMD SHIFT 5
Gianfranco Fertino
13

ON MAC: + Shift- Roder halten CtrlSie gedrückt und klicken Sie im Browser auf die Schaltfläche zum erneuten Laden.

Badmadrad
quelle
2
Dies erzwingt kein Nachladen von Favoriten.
Shammoo
1
Dies hat mein Favicon neu
geladen
Funktioniert für Ubuntu 16.04
uneet7
10

Für Internet Explorer gibt es eine andere Lösung:

  1. Öffnen Sie den Internet Explorer.
  2. Klicken Sie auf Menü> Tools> Internetoptionen.
  3. Klicken Sie auf Allgemein> Temporäre Internetdateien> Schaltfläche "Einstellungen".
  4. Klicken Sie auf die Schaltfläche "Dateien anzeigen".
  5. Suchen Sie Ihre alte Datei favicon.ico und löschen Sie sie.
  6. Starten Sie den Browser neu (Internet Explorer).
nam
quelle
9

Höchstwahrscheinlich ein Webbrowser-Problem. Sie müssen Ihren Cache aus Ihrem Browser löschen, Ihren Browser schließen und erneut öffnen. Das sollte es beheben.

Ich glaube nicht, dass Ihre Favoriten in Ihren Favoriten aktualisiert werden, bis Sie diese Seite erneut besuchen und davon ausgehen, dass Sie zuvor den Cache Ihres Browsers geleert haben.

Ihr Webbrowser geht nicht ins Internet, um selbst nach einem neuen Favicon zu suchen ... Gott sei Dank.

Senica Gonzalez
quelle
3
"Ihr Webbrowser wird nicht ins Internet gehen, um selbst nach einem neuen Favicon zu suchen ... Gott sei Dank." Warum nicht? Warum nicht jedes Mal aktualisieren, wenn eine Seite geladen wird? Es ist ein 2k-Bild, das Erdnüsse ist. Es sollte niemals veraltet sein. Die ganze Caching-Idee ist im großen Schema der Dinge einfach albern.
Simon
5
developer.yahoo.com/performance/rules.html erwähnt Probleme im Zusammenhang mit dem Herunterladen von favicon.ico, an die Sie möglicherweise nicht gedacht haben. Überall gute Tipps. Caching ist ein wertvolles Tool, um sicherzustellen, dass Ihre Website so schnell wie möglich ausgeführt wird. Caching ist auch nützlich, damit sich Ihr Browser so schnell wie möglich anfühlt.
Artlung
6
@ Simon, Caching ist dumm?!? Ich hoffe für Ihre Kunden, dass Sie seit 2010 gelernt haben, wie wichtig eine bessere Webentwicklung ist. Was "albern" ist, ist NICHT zwischenzuspeichern und unnötige Anfragen an Ihren Server zu richten, um eine statische Datei zu erhalten, die sich selten, wenn überhaupt, ändert.
Ed DeGagne
8

Versuchen Sie, in einem neuen Tab zu öffnen

Ich habe viele der oben genannten Dinge ausprobiert (Cache zurücksetzen, aktualisieren, das Link-Tag verwenden usw.), sogar meine .htaccessDatei überprüft und die Variable ExpiresByType zurückgesetzt.

Aber genau das hat bei mir sowohl in Chrome (25.0.x) als auch in Safari (6.0.1) funktioniert:

  1. Cache leeren
  2. Das Favicon wird fest mit dem <link>Tag verknüpft
  3. Navigieren zu mysite.com/favicon.ico
  4. Öffnen mysite.comin einer neuen Registerkarte

(Bis zu Schritt 3 wurde beim Aktualisieren auf derselben Registerkarte das alte Symbol reproduziert.)

Alter McStopher
quelle
8

Wenn Sie unter Chrome unter macOS nicht die gesamte Chrome-Favicon-Datenbank löschen möchten, wie bereits hier vorgeschlagen, können Sie nur die widersprüchlichen Symbole löschen:

  1. Beenden Sie Chrome
  2. Laden Sie die Favicons-Datenbank (hier mit SQLite):

sqlite3 ~/Library/Application\ Support/Google/Chrome/Default/Favicons

  1. Suchen Sie nach der Datei, die Probleme verursacht

select * from favicons where url = 'http://mysite.dev/favicon.ico';

  1. Wenn Sie mit der Ausgabe zufrieden sind:

delete from favicons where url = 'http://mysite.dev/favicon.ico';


Alternativ können Sie nach einem Muster suchen, das Sie zum Löschen mehrerer Einträge wiederverwenden können:


  1. Suchen Sie nach mehreren Dateien , die Probleme verursachen

select * from favicons where url like 'http://mysite.dev%';

  1. Und noch einmal, wenn Sie mit dem, was dies zurückgibt, zufrieden sind:

delete from favicons where url like 'http://mysite.dev%';


  1. Geben Sie ein .exitund drücken Sie die Eingabetaste, um sqlite zu beenden
  2. Starten Sie Chrome neu
MrUpsidown
quelle
6

Wenn Sie das Favicon bei Google anfordern, können Sie sich die Antwortheader ansehen.

Last-Modified: Fri, 09 Jan 2009 16:35:02 GMT
Date: Thu, 01 Dec 2010 00:00:01 GMT
Expires: Fri, 01 Dec 2011 00:00:01 GMT
Cache-Control: public, max-age=31536000
Age: 7

Wenn Sie der Antwort einen "Expires:" - Header hinzufügen, fordern Client-Browser das Symbol nach diesem Zeitstempel erneut an. Während der aktiven Entwicklung können Sie den abgelaufenen Zeitstempel auf ein oder zwei Sekunden in der Zukunft festlegen und ihn immer abrufen lassen, obwohl dies ein schlechter langfristiger Plan ist.

Dean J.
quelle
2
Es funktioniert auch nur präventiv, was den Zweck der Frage übertrifft.
ANeves
6

Chrome-Version: 68.0.3440.106

Starten Sie Chrome einfach neu (in Ihrer Adressleiste): chrome://restart

Pascal
quelle
5

Die Favicon-Unterstützung von Chrome ist fehlerhaft - ignorieren Sie diese Antwort

Ich habe diese Antwort unter dem Eindruck geschrieben, dass dies erforderlich ist, um die Favoriten in Google Chrome zu aktualisieren. Es stellt sich jedoch heraus, dass dies nur in den ersten fünf Minuten funktioniert, bis das Symbol bei der Verlaufssynchronisierung von Chrome unwiederbringlich verloren geht .

Ursprüngliche Antwort

Sie müssen Ihren Cache nicht leeren, Ihren Browser nicht neu starten oder Ihren HTML- Code neu schreiben. Sie müssen lediglich die URL des Symbols einmal ändern , damit der Browser das zuvor zwischengespeicherte Symbol vergisst.

Angenommen, Sie haben Ihr Symbol über <link>Elemente auf Ihrer Seite definiert <head>, können Sie dies tun, indem Sie diesen Standard-JS-Einzeiler in der Konsole ausführen:

[].slice.call(document.querySelectorAll('head>link[rel$="icon"]')).map(function(ln){ln.href+='?v=2'});

Eine erweiterte Implementierung, die dies automatisch für Endbenutzer in der Produktion tun kann, finden Sie unter freshicon.js .

Stuart P. Bentley
quelle
Dies ist tatsächlich nützlich, wenn Sie versuchen, ein zwischengespeichertes Symbol auf einem Server zu entfernen, den Sie nicht kontrollieren, auf dem das Symbol jetzt fehlt und einen Nicht-200-http-Code zurückgibt. Anstatt anzuhängen, ?v=2tauschen Sie die gesamte URL gegen ein Symbol Ihrer Wahl aus und es scheint nach einer Aktualisierung zu bleiben
Paul S.
4

Ich habe kürzlich meine Lesezeichen wiederhergestellt und nach einer Möglichkeit gesucht, die FavIcons wiederherzustellen, ohne jede Seite zu besuchen. Meine Suche brachte mich zu diesem Thread.

Für diejenigen unter ähnlichen Umständen laden Sie einfach das FAVICON RELOADER-Addon herunter. Nach der Installation finden Sie den Befehl "Favoriten-Symbole neu laden" in Ihrem Dropdown-Menü BOOKMARKS.

https://addons.mozilla.org/en-US/firefox/addon/faviconreloader/?src=api

bgc
quelle
Es ist wieder zur Installation da und sieht wirklich vielversprechend aus (Sie finden das AddOn im Lesezeichen-Menü), aber es hat auch das Symbol auf meinem Firefox 34 (unter Linux) nicht ohne Neustart neu
geladen
4

Wenn Sie PHP verwenden, können Sie auch diese Zeile verwenden.

<link rel="shortcut icon" href="http://www.yoursite.com/favicon.ico?v=<?php echo time() ?>" />

Es wird Ihr Favicon bei jedem Laden der Seite aktualisieren.

Shakeel Ahmed
quelle
2
Das ist das Problem "Es wird Ihr Favicon bei jedem Laden der Seite aktualisieren". Wie wäre es mit Caching? Das Favicon sollte zwischengespeichert werden.
Machineaddict
Wenn Sie Ihr neues Favicon zwischenspeichern möchten, geben Sie einfach einen neuen Wert ein wie .. <link rel = "Verknüpfungssymbol" href = " yoursite.com/favicon.ico?v=12345 ">
Shakeel Ahmed
2
favicon.ico? v = <? php echo md5_file ('favicon.ico') wie von Felix Wienberg vorgeschlagen @machineaddict
Sven van den Boogaart
1
Dies ist kein guter Weg, um dieses Problem zu lösen. Wenn Sie time () verwenden, wird das Symbol jedes Mal neu geladen. Sie möchten, dass die letzte geänderte Zeit der Datei favicon.ico nicht die aktuelle Wanduhrzeit ist .
NickG
Was ist, wenn Sie auf die nächsten 24 Stunden oder 30 Tage runden? Ein monatlicher Cache-Reset könnte nützlich sein
SwiftNinjaPro
3

Wenn Sie nur daran interessiert sind, es zu debuggen, um sicherzustellen, dass es sich geändert hat, können Sie einfach einen Dummy-Eintrag zu Ihrer / etc / hosts-Datei hinzufügen und auf die neue URL klicken. Das Favicon wird noch nicht zwischengespeichert und Sie können sicherstellen, dass Ihr neues funktioniert.

Ohne den Namen des Favicons zu ändern, können Sie Ihre Benutzer auf keinen Fall dazu zwingen, eine neue Kopie zu erhalten

cpjolicoeur
quelle
2

Dies funktioniert für Chrome:

  • auf Mac: Datei löschen

    $ {user.home} / Bibliothek / Anwendungsunterstützung / Google / Chrome / Standard / Favicons

  • unter Windows: Dateien löschen

    C: \ Benutzer [Benutzername] \ AppData \ Local \ Google \ Chrome \ Benutzerdaten \ Default \ Favicons C: \ Benutzer [Benutzername] \ AppData \ Local \ Google \ Chrome \ Benutzerdaten \ Default \ Favicons-Journal

Quelle

Nikolai Koudelia
quelle
1

Dies ist eine Problemumgehung für den Chrome-Fehler: Ändern Sie das rel-Attribut in "Stylesheet"! Behalten Sie jedoch den ursprünglichen Link. Klappt wunderbar:

Ich habe diese Problemumgehung gefunden, weil wir auch die Anforderungen haben, die Standorte / den Produktionscode des Kunden aktualisieren zu können, und ich keine der anderen Lösungen gefunden habe, die funktionieren könnten.

user1427015
quelle
1
Ich habe hier buchstäblich jede Vorschlags- (Codierungs-) Lösung ausprobiert und dies ist die einzige, die für mich funktioniert hat. Hast du eine Idee warum?
Crystal Miller
1

Ich weiß, dass dies eine wirklich alte Frage ist, aber es ist auch eine, die immer noch relevant ist, obwohl diese Tage nur für Mozilla gelten. (Ich habe keine Ahnung, was der Explorer macht, da wir nicht für nicht standardmäßige Browser codieren).

Chrome verhält sich gut, wenn ein Symbol-Tag in die Kopfzeile aufgenommen wird.

Obwohl Mozilla sich des Problems wie üblich bewusst ist, beheben sie die lästigen Kleinigkeiten nie. Auch 6 Jahre später.

Es gibt also zwei Möglichkeiten, eine Symbolaktualisierung mit Firefox zu erzwingen.

  1. Lassen Sie alle Ihre Clients Firefox deinstallieren. Dann neu installieren.

  2. Geben Sie manuell nur die Domain in die URL-Leiste ein - verwenden Sie nicht nur die Domain http oder www (mydomain.com).

Dies setzt natürlich voraus, dass Ihre ns-Datensätze nur die Auflösung für den Domainnamen enthalten.

Rockmo
quelle
1

Einfach,

1: Ich möchte nicht mit Codes herumspielen (ps mein Site Builder verwendet keine Codes, er verwendet die Schaltfläche "Datei hochladen" und er macht es selbst)

2: Ich habe das CTRL+ ausprobiertF5 und es funktioniert bei mir nicht so ....

ICH HABE EINE LÖSUNG:

IE: Löschen Sie den gesamten Browserverlauf und die Cookies, indem Sie zu den Einstellungen cog O gehen

Chrome: Gehen Sie zum Menü in der oberen rechten Ecke unter dem X, das wie ein = aussieht, und gehen Sie dann zu Einstellungen, Verlauf, LÖSCHEN DER DATEN LÖSCHEN und aktivieren Sie alle zutreffenden Kontrollkästchen (ich habe Verlauf, Cookies erstellt und die Catche aus dem Feld geleert Anfang der Zeit)

Robert
quelle
4
Die Frage bezieht sich darauf, wie Favicons zwischengespeichert werden. Durch das Löschen Ihres lokalen Caches wird das Problem für Sie behoben, jedoch nicht für andere.
Mark Chorley
@ MarkChorley, genau darum geht es in der ursprünglichen Frage. Caching von Favicons in einer lokalen Entwicklungsumgebung.
MrUpsidown
1

Ändern Sie einfach diesen Dateinamen = 'favicon1.ico'

Armin Alibasic
quelle
0

So habe ich es mit einem einfach animierten Favicon und FireFox 3.6.13 (Beta-Version) geschafft. Es wird wahrscheinlich auch für andere Versionen von FireFox funktionieren. Lassen Sie es mich wissen, wenn dies nicht der Fall ist. Es ist im Grunde die Lösung von artlung, aber auch die GIF-Datei:

  1. Ich habe per FTP-Programm geöffnet und meine Dateien favicon.ico UND favicon.gif heruntergeladen.
  2. dann löschte sie aus den Dateien meines Servers.
  3. Dann habe ich sie in meinem Browser geöffnet, wie von artlung vorgeschlagen: http://mysite.com/favicon.ico UND http://mysite.com/favicon.gif Sobald diese Adressen geladen und 404 Fehlerseiten angezeigt wurden ("Seite nicht gefunden")
  4. Ich habe dann beide Dateien wieder auf meinen Server hochgeladen und PRESTO - die richtigen Symbole wurden sofort angezeigt.
Lineofbirds
quelle
1
Übrigens, um die neuen anzuzeigen, musste ich auch mein gespeichertes Lesezeichen löschen - und das gleiche Verfahren funktionierte auch für Google Chrome.
Lineofbirds
0

Stellen Sie außerdem sicher, dass Sie die vollständige Bild-URL und nicht nur den relativen Pfad eingeben:

http://www.example.com/images/favicon.ico

Und nicht:

images/favicon.ico
Amr Elgarhy
quelle
3
/images/favicon.icoist der richtige Weg, dies zu tun: Es funktioniert "nur" für verschiedene Umgebungen (dev / test / Production) und ist ein absoluter Pfad - von der Dokumentbasis-URL.
ANeves
Leider benötigen Sie die vollqualifizierte URL für IE7 (& IE8?) - siehe jeffcode.blogspot.com.au/2007/12/…
eug
2
Dies ist keine wirkliche Antwort, dies ist ein Kommentar.
Zac
0

Wenn das Problem trotz der oben beschriebenen Schritte weiterhin besteht, versuchen Sie, den IIS-Server neu zu starten . Hoffe das hilft...

Murat Yıldız
quelle
-3

Simon, ich nehme an, es gibt einen Grund, warum bisher keine der anderen Antworten akzeptiert wurde. Daher glaube ich, dass dies möglich ist doch ein Grails ausgeben - vor allem , wenn Sie die ‚Ressourcen Plugin‘ verwenden.

Wenn Ihre Plugins ein Favicon bereitstellen (was - unlogischerweise - viele tun), überschreiben sie möglicherweise das von Ihnen gewünschte Favicon - vorausgesetzt, Ihr Plugin befindet sich in einem Plugin selbst.

Wenn das Problem durch Löschen des Favicons aus allen Plugins vorübergehend behoben wird, tritt Folgendes auf:

http://jira.grails.org/browse/GPRESOURCES-134

user569825
quelle
-3

Führen Sie die folgenden Schritte aus, um das App-Symbol zu ändern:

  1. Fügen Sie Ihre .ico-Datei zum Projekt hinzu.
  2. Gehen Sie zu angle.json und geben Sie in diesem "Projekte" -> "Architekt" -> "Erstellen" -> "Optionen" -> "Assets" einen Eintrag für Ihre Symboldatei ein. Informationen dazu finden Sie im vorhandenen Eintrag von favicon.ico.
  3. Gehen Sie zu index.html und aktualisieren Sie den Pfad der Symboldatei. Zum Beispiel,

<link rel="icon" type="image/x-icon" href="abc.ico">

Alternativ können Sie Ihre Symboldatei mit favicon.ico umbenennen und im Verzeichnis ersetzen.

  1. Starten Sie den Server neu.
  2. Hard Refresh Browser und Sie können loslegen.
Rut Shah
quelle