Come posso forzare un favicon aggiornare?

Ho un’applicazione Grails in esecuzione localmente con il proprio tomcat e ho appena cambiato la favicon per una nuova. Il problema è che non riesco a vederlo in nessun browser. La vecchia favicon appare o non ho nessuna favicon, ma non la mia nuova. Non penso che questo sia un problema Grails di per sé, più un problema con le favicon.

Cosa dovrebbe succedere con le favicon? Come dovrebbero funzionare? Ho numerosi segnalibri nel mio browser che hanno le icone sbagliate e non sembrano mai essere aggiornati. Come impongo al server / browser di interromperne la memorizzazione nella cache? Sembra piuttosto stupido archiviarli sempre dato che normalmente sono solo 16×16. Perché non caricarli solo ad ogni visita alla pagina? Non è esattamente un enorme sovraccarico.

Per aggiornare la favicon del tuo sito puoi forzare i browser a scaricare una nuova versione usando il tag link e una querystring sul tuo nome file. Questo è particolarmente utile negli ambienti di produzione per assicurarsi che gli utenti ricevano l’aggiornamento.

  

Ok, dopo 10 minuti di wtf’ing, il modo semplice per sistemarlo è vicino a quello di lineofbirds

  1. Digitare http://www.yoursite.com/favicon.ico (o http://www.yoursite.com/apple-touch-icon.png, ecc.)
  2. Premi Invio
  3. ctrl + f5
  4. Riavvia browser (IE, Firefox)

Questa risposta non è stata ancora data, quindi ho pensato di pubblicarla. Ho guardato tutto intorno al web e non ho trovato una buona risposta per testare le favicon nello sviluppo locale.

Nella versione corrente di chrome (su OSX) se si esegue quanto segue si otterrà un aggiornamento istantaneo di favicon:

  1. Passa il mouse sopra la scheda
  2. Clic destro
  3. Seleziona ricaricare
  4. La tua favicon dovrebbe ora essere aggiornata

Questo è il modo più semplice che ho trovato per aggiornare localmente la favicon.

Rinominare il file favicon e aggiungere un’intestazione html con il nuovo nome, ad esempio:

  

Se usi PHP puoi anche usare MD5-Hash della favicon come stringa di query:

  

In questo modo il Favicon si aggiornerà sempre quando è stato cambiato.

Come indicato nei commenti, è ansible utilizzare l’ultima data modificata anziché MD5-Hash per ottenere la stessa funzione e risparmiare un po ‘sulle prestazioni del server:

  

Se su Windows e usando Chrome, esci dalla barra delle applicazioni (Ctrl + Alt + Canc) e uccidi tutte le istanze poi vai a …

C:\Users\your_username\AppData\Local\Google\Chrome\User Data\Default

o…

%appData%/../Local/Google/Chrome/User Data/Default

ed elimina i file Favicons-journal, Favicons

quindi avviare Chrome


Dal momento che questa soluzione implica il riavvio del browser, potresti non tornare qui una volta che hai avuto successo … quindi considera l’up-voting adesso .. credimi funzionerà, in più puoi sempre rimuovere il tuo voto comunque

In Chrome su Mac OS X è ansible rimuovere un file con favicon cache

 ${user.home}/Library/Application Support/Google/Chrome/Default/Favicons 

Bene, le spese generali sono generali, ma sì, non troppo grandi.

Inoltre, i browser sono a volte “avidi” sui file memorizzati nella cache. È ansible svuotare la cache e / o riavviare il browser e potrebbe vedere la modifica. Se ciò non riesce però …

La mia soluzione di cheapo è:

  1. Visita il tuo file all’indirizzo http://example.com/favicon.ico nel tuo browser.
  2. Elimina favicon.ico dal tuo webroot.
  3. Visita di nuovo http://example.com/favicon.ico in un browser, verifica che manchi.
  4. Carica uno nuovo sul tuo webroot.
  5. Visita di nuovo http://example.com/favicon.ico in un browser, verifica che sia il nuovo.

Se quella sequenza non funziona, allora sta succedendo qualcos’altro.

A seconda del browser vengono gestiti in modo diverso, ma in genere trovo che andare alla pagina di default del sito, e fare un duro aggiornamento. CTRL + F5 , in genere lo aggiornerà.

Per Internet Explorer, c’è un’altra soluzione:

  1. Apri Internet Explorer.
  2. Fai clic sul menu> Strumenti> Opzioni Internet.
  3. Fai clic su generale> file temporanei Internet> pulsante “impostazioni”.
  4. Fai clic sul pulsante “Visualizza file”.
  5. Trova il tuo vecchio file favicon.ico ed eliminalo.
  6. Riavvia il browser (Internet Explorer).

Più che probabile un problema con il browser web. Dovrai eliminare la cache dal browser, chiudere il browser e riaprirlo. Questo dovrebbe risolverlo.

Non credo che i tuoi favicon verranno aggiornati sui tuoi preferiti fino a quando non rivedi quella pagina e supponendo che tu abbia precedentemente cancellato la cache del tuo browser.

Il tuo browser non uscirà su Internet per verificare la presenza di una nuova favicon da sola … per fortuna.

ON MAC: + ShiftR o tenere premuto Ctrl e fare clic sul pulsante di ricarica nel browser.

Prova ad aprire in una nuova scheda

Ho provato molte delle cose sopra (reimpostando la cache, aggiornando, usando il tag link, ecc.), Ho anche controllato il mio file .htaccess e reimpostato la variabile ExpiresByType.

Ma questo è ciò che ha funzionato per me in Chrome (25.0.x) e Safari (6.0.1):

  1. Cache di risciacquo
  2. hard della favicon con il tag
  3. Navigazione su mysite.com/favicon.ico
  4. Aprire mysite.com in una nuova scheda

(Fino al passaggio 3, l’aggiornamento nella stessa scheda continuava a riprodurre la vecchia icona.)

Per Chrome su macOS, se non vuoi cancellare l’intero database di favicon di Chrome come già suggerito qui, puoi eliminare solo le icone in conflitto:

  1. Esci da Chrome
  2. Carica il database di favicon (usando sqlite qui):

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

  1. Cerca il file che causa problemi

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

  1. Se sei soddisfatto dell’output:

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


In alternativa , puoi cercare un pattern che puoi riutilizzare per eliminare più voci:


  1. Cerca più file che causano problemi

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

  1. E di nuovo se sei soddisfatto di ciò che ritorna:

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


  1. Digitare .exit e .exit per uscire da sqlite
  2. Riavvia Chrome

Quando richiedi la favicon da Google, puoi dare un’occhiata alle intestazioni di risposta.

 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 

Se si inserisce un’intestazione “Expires:” nella risposta, i browser client richiederanno nuovamente l’icona dopo tale timestamp. Durante lo sviluppo attivo, è ansible impostare la data / ora di scadenza in un secondo o due in futuro, e richiedere sempre di recuperarla, sebbene si tratti di un piano a lungo termine.

Il supporto di favicon di Chrome è bacato, ignorando questa risposta

Ho scritto questa risposta con l’impressione che questo è quello che è servito per aggiornare le favicon in Google Chrome. Tuttavia, risulta che funziona solo per i primi cinque minuti circa, fino a quando l’icona non viene irrimediabilmente persa nella sincronizzazione della cronologia di Chrome .

Risposta originale

Non è necessario svuotare la cache, riavviare il browser o riscrivere il codice HTML. È sufficiente modificare l’URL dell’icona una sola volta , in modo che il browser dimentichi l’icona memorizzata nella cache precedente.

Supponendo di aver definito l’icona tramite gli elementi nella della tua pagina, puoi farlo eseguendo questo one-liner JS standard nella console:

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

Per un’implementazione più avanzata di ciò che può farlo automaticamente per gli utenti finali in produzione, vedere freshicon.js .

Recentemente ho ripristinato i miei segnalibri e stavo cercando un modo per ripristinare i FavIcons senza visitare ciascuna pagina. La mia ricerca mi ha portato a questo thread.

Per quelli in una circostanza simile, scaricare semplicemente l’addon FAVICON RELOADER. Una volta installato, troverai il comando “ricarica icone preferite” nel menu a discesa BOOKMARKS.

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

Se stai usando PHP .. puoi anche usare questa linea.

  

Aggiorna la tua favicon su ogni caricamento della pagina.

Se sei solo interessato a eseguire il debug per assicurarti che sia cambiato, puoi semplicemente aggiungere una voce fittizia al tuo file / etc / hosts e premere il nuovo URL. Quella favicon non sarebbe già stata memorizzata nella cache e puoi assicurarti che ne stia funzionando una nuova.

In mancanza di modificare il nome della favicon, non è ansible forzare gli utenti a ottenere una nuova copia

Questa è una soluzione per il bug di chrome: cambia l’attributo rel in stylesheet! Tieni comunque il link originale. Funziona come un fascino:

Mi è venuta in mente questa soluzione perché abbiamo anche l’obbligo di essere in grado di aggiornare i siti dei clienti / codice di produzione e non ho trovato nessuna delle altre soluzioni per funzionare.

Assicurati inoltre di inserire l’intero URL dell’immagine non solo nel suo percorso relativo:

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

E non:

 images/favicon.ico 

So che questa è una domanda molto vecchia, ma è anche una questione ancora rilevante, sebbene in questi giorni si applichi solo a Mozilla. (Non ho idea di cosa sia l’explorer coz che non codifichiamo per i browser non standard).

Chrome si comporta bene se uno include un tag icona nell’intestazione.

Sebbene i mozilla siano ben consapevoli del problema, come al solito, non aggiustano mai le piccole cose fastidiose. Anche 6 anni dopo.

Quindi, ci sono due modi per forzare un’icona di aggiornamento con firefox.

  1. Chiedi a tutti i tuoi client di disinstallare firefox. Quindi reinstallare.

  2. Digitare manualmente solo il dominio nella barra dell’URL: non utilizzare http o www solo il dominio (mydomain.com).

Ciò presuppone naturalmente che i record ns includano solo la risoluzione per il nome di dominio.

Ecco come sono riuscito con una favicon semplicemente animata e con FireFox 3.6.13 (versione beta). Probabilmente funzionerà anche per altre versioni di FireFox, fammi sapere se non funziona. È fondamentalmente la soluzione di artlung, ma si rivolge anche al file .gif:

  1. Ho aperto il programma FTP, scaricato i miei file favicon.ico AND favicon.gif,
  2. poi CANCELLATI dai file del mio server.
  3. Poi li ho aperti nel mio browser come suggerito da artlung: http://mysite.com/favicon.ico AND http://mysite.com/favicon.gif Una volta che questi indirizzi caricano e visualizzano 404 pagine di errore (“pagina non trovata”)
  4. POI ho caricato entrambi i file sul mio server e PRESTO – le icone corrette sono state visualizzate immediatamente.

Se il problema persiste nonostante si applichi qualche passaggio sopra, provare a riavviare il server IIS . Spero che questo ti aiuti…

Semplice,

1: Non voglio giocherellare con i codici (ps il mio site builder non usa i codici, usa il pulsante “upload file” e lo fa da solo)

2: Ho provato il CTRL + F5 e non funziona per me quindi ….

HO UNA SOLUZIONE:

IE: Cancella tutta la cronologia e i cookie del browser andando al set di impostazioni O

Chrome: vai al menu nell’angolo in alto a destra sotto la X che assomiglia a a =, quindi vai a impostazioni, cronologia, CANCELLA DATI DI NAVIGAZIONE e controlla tutte le caselle che si applicano (ho fatto cronologia, cookie e svuoto la catche dal l’inizio del tempo)

Questo funziona per Chrome:

  • su Mac: elimina il file

    $ {user.home} / Library / Application Support / Google / Chrome / Default / Favicons

  • su Windows: elimina i file

    C: \ Utenti [nome utente] \ AppData \ Local \ Google \ Chrome \ Dati utente \ Predefinito \ Preferiti C: \ Utenti [nome utente] \ AppData \ Local \ Google \ Chrome \ Dati utente \ Default \ Favicons-journal

fonte

Basta cambiare questo nome file = ‘favicon1.ico’

Versione di Chrome: 68.0.3440.106

Riavvia semplicemente Chrome (nella barra degli indirizzi): chrome://restart

Simon, suppongo ci sia una ragione per cui nessuna delle altre risposte è stata accettata finora. Quindi credo che questa potrebbe essere una questione di Grails – Soprattutto se stai usando il ‘Plugin Risorse’.

Se i tuoi plugin forniscono una favicon (che – illogicamente – molti lo fanno), potrebbero sovrascrivere quello che volevi usare – dato che il tuo è in un plugin stesso.

Se cancellando temporaneamente la favicon da tutti i tuoi plug-in risolvi il problema, probabilmente lo stai riscontrando:

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

Potrebbe essere utile a poche persone, ma ho avuto lo stesso problema e ho scoperto che era legato alle permessioni dei file, quindi ho dato un permesso 777 e ha funzionato, ovviamente dopo che sei sicuro che il problema è lì, fai sicuro di cambiare le autorizzazioni per valori più sicuri.