Jak wymusić odświeżenie favicon?

1535

Mam aplikację Grails uruchomioną lokalnie za pomocą własnego tomcata i właśnie zmieniłem favicon na nowy. Problem polega na tym, że nie widzę go w żadnej przeglądarce. Pojawia się stary favicon lub w ogóle go nie otrzymuję, ale nie mój nowy. Nie sądzę, że jest to kwestia Grails per se, bardziej problem z favicons.

Co ma się stać z ulubionymi? Jak mają działać? W przeglądarce mam wiele zakładek, które mają niewłaściwe ikony i nigdy nie wydają się odświeżane. Jak zmusić serwer / przeglądarkę do zaprzestania buforowania? Głupotą wydaje się zawsze buforowanie ich, ponieważ zwykle mają tylko 16 x 16. Dlaczego nie przesłać ich przy każdej wizycie na stronie? To nie jest dokładnie ogromny koszt.

Szymon
źródło
12
Przyjęte i wysoko ocenione rozwiązanie NIE jest prawdziwym rozwiązaniem. Rzeczywisty powód, dla którego odświeżanie nie działa, można znaleźć w rozwiązaniu tego pytania: stackoverflow.com/questions/8616016/... --- pamięć podręczna ikon znajduje się w pliku DB sqlite, niezależnie od pamięci podręcznej przeglądarki!
Mörre,
8
Zaakceptowane i wysoko ocenione rozwiązanie to rozwiązanie dla produkcji, czy też powinienem napisać samouczek dla użytkowników, jak wyczyścić pamięć podręczną favicon, gdy aktualizujemy favicon dla produkcji?
Miroslav Saracevic,
2
To nie jest ogólne rozwiązanie. Co zrobić, jeśli używasz domyślnej lokalizacji favicon bez dotykania kodu? To znaczy favicon.icoplik w katalogu głównym dokumentu.
Sebastian
7
xkcd.com/1854
sudo bangbang

Odpowiedzi:

2088

Aby odświeżyć stronę ulubionych, możesz zmusić przeglądarki do pobrania nowej wersji za pomocą tagu link i zapytania w nazwie pliku. Jest to szczególnie przydatne w środowiskach produkcyjnych, aby upewnić się, że użytkownicy otrzymają aktualizację.

<link rel="icon" href="http://www.yoursite.com/favicon.ico?v=2" />
znak
źródło
35
To załatwiło sprawę. Musiałem usunąć type="image/x-icon"ze swojego kodu, w przeciwieństwie do wielu źródeł. W v?=2części zapytania użyłem znacznika czasu zmodyfikowanego przez plik .
Wertisdk
10
Odkryłem, że w niektórych przeglądarkach favicon nie aktualizował się bez względu na wszystko, chyba że usunę historię. Następnie zapisze nowy favicon.
pathfinder
6
Niestety potrzebujesz w pełni kwalifikowanego bezwzględnego adresu URL dla IE7 (i IE8?) - patrz jeffcode.blogspot.com.au/2007/12/…
eug
5
zgadzam się z powyższymi komentarzami, ale działa to dla mnie we wszystkich obecnych przeglądarkach: <link rel = "ikona skrótu" href = "/ favicon.ico? v = 2" />
Dave Sumter
31
Sensowne jest buforowanie ulubionych, ponieważ czasami zwiększają wielkość 2-3 kilobajtów. Nie chcesz nadal przesyłać wszystkich tych danych. (tak, sarkazm)
Flat Cat
823

Ok, po 10 minutach próbowania, łatwy sposób, aby to naprawić, jest zbliżony do linii ptaków

  1. Wpisz www.yoursite.com/favicon.ico (lub www.yoursite.com/apple-touch-icon.png itp.)
  2. Pchać enter
  3. ctrl+f5
  4. Uruchom ponownie przeglądarkę (IE, Firefox)
alex
źródło
8
Korzystając z tej metody, prawdopodobnie pokonałeś buforowanie, ale Twoi dotychczasowi użytkownicy nie mogą. Dlatego uważam, że druga odpowiedź jest cenniejsza.
Demircan Celebi
3
Warto zauważyć, że nie działa to w przeglądarce Firefox 33. Pierwsza odpowiedź to lepszy wybór.
Brent Wagoner,
1
Musiałem zamknąć narzędzia programistyczne, aby działało w Chrome.
tehwalris,
1
Nie musiałem ponownie uruchamiać przeglądarki, ale musiałem nawigować do mojej witryny w zakładce bez otwartych devtools. Z jakiegoś powodu zrobiły to Ctrl + F5 'na karcie innej niż devtools. Mógłbym Ctrl + F5, jak chciałem i poruszać się po Internecie i wracać do mojej strony tak bardzo, jak chciałem w zakładce devtools i nigdy nie zaktualizowałbym favicon.
mjohnsonengr
3
Część „Uruchom ponownie przeglądarkę” była jedyną rzeczą, która sprawiła, że ​​działała dla mnie. Wszystkie pozostałe poprawki działają teoretycznie, ale w rzeczywistości nie zmieniają pikseli favicon wyświetlanych na karcie przeglądarki. +1 tej odpowiedzi
b264
262

Ta odpowiedź nie została jeszcze podana, więc pomyślałem, że ją opublikuję. Rozejrzałem się po Internecie i nie znalazłem dobrej odpowiedzi na przetestowanie ulubionych w lokalnym rozwoju.

W bieżącej wersji Chrome (na OSX), jeśli wykonasz następujące czynności, otrzymasz natychmiastowe odświeżenie ulubionych:

  1. Najedź kursorem na kartę
  2. Kliknij prawym przyciskiem myszy
  3. Wybierz przeładuj
  4. Twój favicon powinien teraz zostać odświeżony

To najłatwiejszy sposób na lokalne odświeżenie favicon.

Garry Polley
źródło
1
Niestety nie działa to w IE, a nawet w Chrome na Windows, więc wydaje się, że powinieneś zaakceptować przyjętą odpowiedź, chyba że używasz Chrome tylko na OSX.
Christopher King
3
Działa w OS X Sierra z Chrome 53.0.2785.143 (64-bit)
Seno,
1
działa dla mnie: Chrome 58.0.3029.110, Windows 10, localhost
R Brill
1
Pracował w Chrome 63.0.3239.84 dla Windows 10!
beawolf
4
Działa w Chrome 67.0 na OSX. Dziwne, że to nie działa z CMD+ Shift+R
cephei_vv
56

Zmień nazwę pliku favicon i dodaj nagłówek HTML z nową nazwą, na przykład:

<link rel="SHORTCUT ICON" href="http://www.yoursite.com/favicon2.ico" />
Klaus Byskov Pedersen
źródło
4
Zakładam, że przeglądarka może sprawdzić, czy nazwa favicon jest taka sama. Jeśli tak, nie poprosi o ponowne pobranie i użyje tego, który jest już w pamięci podręcznej, ale jeśli zmienisz nazwę, przyjmie, że zmieniła się, i poprosi o to z serwera.
Bojan Kogoj,
Miałem problem z IE8. Nie korzystał z favicon.ico umieszczonego w podfolderze. Dodanie skrótu atrybutu rel to naprawiło.
tienbuiDE
3
To wcale nie jest odświeżające, całkowicie zmienia go na nowe.
Zac
pamiętaj, że musisz również zmienić nazwę swojego aktualnego favicon.ico (będzie on w folderze kompilacji lub katalogu, z którego obsługiwana jest aplikacja internetowa)
Rahil Ahmad
55

Jeśli używasz PHP, możesz również użyć skrótu MD5 z favicon jako ciągu zapytania:

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

W ten sposób Favicon zawsze będzie odświeżany po zmianie.

Jak wskazano w komentarzach, można również użyć daty ostatniej modyfikacji zamiast MD5-Hash, aby osiągnąć to samo i zaoszczędzić trochę na wydajności serwera:

<link rel="shortcut icon" href="favicon.ico?v=<?php echo filemtime('favicon.ico') ?>" />
Felix Wienberg
źródło
2
Fajnie, to pozwala uniknąć konieczności zmiany href za każdym razem, gdy aktualizuję favicon, ta odpowiedź powinna mieć więcej głosów!
Sven van den Boogaart
44
Problem z tą odpowiedzią polega na tym, że obliczasz ten skrót przy każdym żądaniu, a to jest coś niepotrzebnego i może zaszkodzić wydajności witryn (jeśli wielu użytkowników).
Diego Jancic,
1
To nie jest wielka sprawa w obu aspektach ... favicon to tylko kilka kilobajtów ... To znaczy, nie będzie mniej stresu na serwerze niż konieczność serwowania favicon za każdym razem ...
Philippe Gilbert
14
Nadal nie widzę żadnego prawdziwego powodu do obliczenia MD5. Użycie daty ostatniej modyfikacji pliku jest łatwiejsze i równie skuteczne. Nie widzę przewagi używania MD5 nad ostatnim zmodyfikowanym znaczkiem.
NickG
9
Jak często naprawdę aktualizujesz swoją ulubioną stronę? To wygląda na przesadę. Wystarczy użyć ręcznego ciągu zapytania podczas tworzenia nowej ikony.
Zera-i-
51

Niszcząc plik używany przez przeglądarkę do przechowywania starych ulubionych, możesz wymusić załadowanie nowych.

  1. Zamknij przeglądarkę. Upewnij się, że nie działają już procesy przeglądarki (np. Sprawdź Menedżera zadań dla chrome.exelub firefox.exe).
  2. Przejdź do miejsca, w którym przeglądarka przechowuje pliki użytkownika:
  3. Usuń pamięć podręczną favicon.
    • W przypadku Chrome usuń FaviconsiFavicons-journal
    • W przeglądarce Firefox usuń favicons.sqlite

To prawie na pewno zadziała. Jeśli nie:

  • Możliwość 1: Aktualizacja przeglądarki zmieniła sposób działania pamięci podręcznej favicon. Edytuj tę odpowiedź, dodając nowe instrukcje.
  • Możliwość 2: Twój problem z favicon nie ma nic wspólnego z nadmiernym buforowaniem. Zamiast tego może to być problem z ładowaniem zasobów - używając Narzędzi programisty upewnij się, że nowy favicon jest pobierany poprawnie.
konzo
źródło
To załatwiło sprawę. Dla mnie był to problem ulubionych aplikacji Google Chrome. To nie jest problem z faviconem DOM.
klewis
2
To dobra odpowiedź, która spełnia moje potrzeby testowania. Nie ma jednej prawdziwej odpowiedzi na to pytanie, ponieważ zależy to od tego, kto musi je odświeżyć i co są skłonni i zdolni zrobić w rozsądny sposób.
Dovev Hefetz
1
Mała poprawka: ta sama ścieżka dla dowolnej nazwy użytkownika to%appData%/../Local/Google/Chrome/User Data/Default
josemmo,
3
Łatwiejszym rozwiązaniem w Chrome jest kliknięcie prawym przyciskiem myszy i wybranie Inspekcja (lub CTRL + SHIFT + I), a następnie kliknięcie i przytrzymanie przycisku odświeżania. Pojawi się menu z opcją Odśwież, Twarde przeładowanie lub Opróżnij pamięć podręczną i Twarde przeładowanie. Zwykle zrobi to Hard Reload, ale jeśli z jakiegoś powodu jest uparty, Empty Cache i Hard Reload na pewno to zrobią.
felwithe
1
W systemie Linux pliki te można znaleźć pod adresem:~/.config/google-chrome/Default
Arnold Schrijver,
29

W Chrome na Mac OS X można usunąć plik za pomocą pamięci podręcznej favicon

${user.home}/Library/Application Support/Google/Chrome/Default/Favicons 
Maxim Mazin
źródło
1
To rozwiązanie działało dla mnie. Z jakiegoś powodu nie odświeżyło favicon wyżej wymienionymi metodami o wiele więcej głosów. Więc dziękuję, Maxim Mazin. Chciałem tylko pozbyć się starego favikona, o którym wiedziałem, że nie może już istnieć na moim nowym serwerze.
tsaulic
2
To podejście działało również dla mnie w systemie Windows, w którym usunąłem favicon z mojej aplikacji, ale Chrome wciąż go pokazywał. Zamknij Chrome, usuń „C: \ Users \ {user} \ AppData \ Local \ Google \ Chrome \ User Data \ Default \ Favicons”, a następnie uruchom ponownie Chome. Stary niechciany favicon zniknął.
skomisa
2
Nie miałem nic pod „Domyślne”, ale w końcu znalazłem tę odmianę:${user.home}/Library/Application Support/Google/Chrome/Profile 1/Favicons
mdahlman,
@mdahlman To początkowo nie działało dla mnie po wypróbowaniu wszystkich innych metod. Jednak ten zadziałał po wejściu w cmd+qChrome, przejściu do paska menu, zmuszeniu do ponownego wyjścia z Chrome i odczekaniu 2 minut, aby otworzyć przeglądarkę i wrócić do mojej witryny.
PrimeTimeTran
17

Cóż, koszty ogólne są kosztami ogólnymi, ale tak, nie są zbyt duże.

Ponadto przeglądarki są czasami „zachłanne”, jeśli chodzi o pliki w pamięci podręcznej. Możesz wyczyścić pamięć podręczną i / lub ponownie uruchomić przeglądarkę i może zobaczyć zmianę. Jeśli to się nie powiedzie ...

Moje tanie rozwiązanie to:

  1. Odwiedź swój plik na http://example.com/favicon.ico w przeglądarce.
  2. Usuń plik favicon.ico ze swojego katalogu głównego.
  3. Odwiedź ponownie http://example.com/favicon.ico w przeglądarce, sprawdź, czy go brakuje.
  4. Prześlij nowy do swojego webroota.
  5. Odwiedź stronę http://example.com/favicon.ico ponownie w przeglądarce, sprawdź, czy to nowa.

Jeśli ta sekwencja nie działa, dzieje się coś innego.

artlung
źródło
7
To działało dla mnie, ale niestety nie możemy poprosić o to każdego odwiedzającego.
talentedmrjones
3
Wejdź na example.com/favicon.ico i naciśnij Ctrl + F5 / Ctrl + Shift + R kilka razy dla mnie działało :) Dzięki za pomysł!
Alfonso Nishikawa,
17

W zależności od przeglądarki są obsługiwane inaczej, ale zazwyczaj przechodzę do domyślnej strony witryny i przeprowadzam intensywne odświeżanie. CTRL+ F5, zazwyczaj wymaga aktualizacji.

Sprzedawcy Mitchel
źródło
Użytkownik Mac: CMD SHIFT 5
Gianfranco Fertino
13

NA MAC: + Shift- Rlub przytrzymaj Ctrli kliknij przycisk przeładowania w przeglądarce.

badmadrad
źródło
2
Nie wymusza to ponownego ładowania ulubionych.
Shammoo
1
To przeładowało mój ulubiony / naprawiłem problem
rgareth
Działa z Ubuntu 16.04
uneet7
10

W przypadku przeglądarki Internet Explorer istnieje inne rozwiązanie:

  1. Otwórz przeglądarkę internetową.
  2. Kliknij menu> narzędzia> opcje internetowe.
  3. Kliknij ogólne> tymczasowe pliki internetowe> przycisk „Ustawienia”.
  4. Kliknij przycisk „Przeglądaj pliki”.
  5. Znajdź stary plik favicon.ico i usuń go.
  6. Uruchom ponownie przeglądarkę (Internet Explorer).
nam
źródło
9

Bardziej niż prawdopodobnie problem z przeglądarką internetową. Będziesz musiał usunąć pamięć podręczną z przeglądarki, zamknąć przeglądarkę i ponownie ją otworzyć. To powinno to naprawić.

Nie wierzę, że twoje ulubione zostaną odświeżone na twoich ulubionych, dopóki nie wrócisz na tę stronę i zakładając, że wcześniej wyczyściłeś pamięć podręczną przeglądarki.

Twoja przeglądarka nie będzie sama wychodzić do Internetu, aby samodzielnie szukać nowego favikonu ... na szczęście.

Senica Gonzalez
źródło
3
„Twoja przeglądarka internetowa nie chce samodzielnie szukać nowego favikonu ... dzięki Bogu”. Dlaczego nie? Dlaczego nie odświeżyć czasu ładowania strony? Jest to obraz 2k, czyli orzeszki ziemne. Nigdy nie powinno być nieaktualne. Cały pomysł buforowania jest po prostu głupi w wielkim planie rzeczy.
Simon
5
developer.yahoo.com/performance/rules.html wspomina o problemach związanych z pobieraniem favicon.ico, o których mogłeś nie myśleć. Dobre wskazówki dookoła. Buforowanie jest cennym narzędziem zapewniającym szybkie działanie witryny. Buforowanie jest również przydatne, aby Twoja przeglądarka działała tak szybko, jak to możliwe.
artlung
6
@Simon, buforowanie jest głupie?!? Mam nadzieję, że Twoi klienci nauczyli się, jak ważne jest lepsze tworzenie stron internetowych od 2010 roku. To, co jest „głupie”, to NIE buforowanie i niepotrzebne wysyłanie do serwera niepotrzebnych zapytań o wartość pliku statycznego, który rzadko, jeśli w ogóle, zmienia się.
Ed DeGagne
8

Spróbuj otworzyć w nowej karcie

Próbowałem wielu powyższych rzeczy (resetowanie pamięci podręcznej, odświeżanie, używanie tagu łącza itp.), Nawet sprawdziłem .htaccessplik i zresetowałem zmienną ExpiresByType.

Ale to w końcu działało dla mnie zarówno w Chrome (25.0.x), jak i Safari (6.0.1):

  1. Opróżnianie pamięci podręcznej
  2. Twarde powiązanie favicon ze <link>znacznikiem
  3. Nawigacja do mysite.com/favicon.ico
  4. Otwieranie mysite.comw nowej karcie

(Aż do kroku 3, odświeżanie na tej samej karcie odtwarzało starą ikonę).

Stary McStopher
źródło
8

W przypadku Chrome na macOS, jeśli nie chcesz usuwać całej bazy danych Chrome favicon, jak sugerowano już tutaj, możesz usunąć tylko sprzeczne ikony:

  1. Zamknij Chrome
  2. Załaduj bazę danych favicons (używając sqlite tutaj):

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

  1. Wyszukaj plik, który powoduje problemy

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

  1. Jeśli jesteś zadowolony z wyników:

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


Alternatywnie możesz wyszukać wzór, którego możesz użyć ponownie, aby usunąć wiele wpisów:


  1. Wyszukaj wiele plików , które powodują problemy

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

  1. I znowu, jeśli jesteś zadowolony z tego, co to zwraca:

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


  1. Wpisz .exiti naciśnij return, aby wyjść z sqlite
  2. Uruchom ponownie Chrome
MrUpsidown
źródło
6

Gdy poprosisz o favicon od Google, możesz spojrzeć na nagłówki odpowiedzi.

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

Jeśli umieścisz w odpowiedzi nagłówek „Wygasa:”, przeglądarki klientów ponownie zażądają ikony po tym znaczniku czasu. Podczas aktywnego programowania możesz ustawić znacznik czasu wygaśnięcia na sekundę lub dwie w przyszłości i zawsze go pobierać, chociaż jest to zły plan długoterminowy.

Dziekan J.
źródło
2
Działa również tylko uprzedzająco, co przekracza cel pytania.
ANeves
6

Wersja Chrome: 68.0.3440.106

Uruchom ponownie Chrome (na pasku adresu): chrome://restart

Pascal
źródło
5

Obsługa ulubionych w Chrome jest błędna - zignoruj ​​tę odpowiedź

Napisałem tę odpowiedź pod wrażeniem, że właśnie tak trzeba odświeżyć ulubione w Google Chrome. Okazuje się jednak, że działa to tylko przez pierwsze pięć minut, dopóki ikona nie zostanie bezpowrotnie utracona podczas synchronizacji historii Chrome .

Oryginalna odpowiedź

Nie musisz wyczyścić pamięci podręcznej, zrestartować przeglądarki ani przepisać kodu HTML - wystarczy zmienić adres URL ikony, raz tak, że przeglądarka będzie zapomnieć poprzednio buforowane ikonę.

Zakładając, że zdefiniowałeś ikonę za pomocą <link>elementów na stronie <head>, możesz to zrobić, uruchamiając ten standardowy liniał JS w konsoli:

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

Bardziej zaawansowane wdrożenie tego, które może to zrobić automatycznie dla użytkowników końcowych w produkcji, patrz freshicon.js .

Stuart P. Bentley
źródło
Jest to przydatne, jeśli próbujesz pozbyć się ikony z pamięci podręcznej na serwerze, nad którym nie masz kontroli, na którym brakuje ikony / zwraca kod inny niż 200 http. Zamiast dodawać ?v=2zamień cały adres URL na wybraną ikonę i wydaje się, że po odświeżeniu pozostanie
Paul S.,
4

Niedawno przywróciłem moje zakładki i szukałem sposobu na przywrócenie FavIcons bez odwiedzania każdej strony. Moje poszukiwania doprowadziły mnie do tego wątku.

Dla osób w podobnej sytuacji wystarczy pobrać dodatek FAVICON RELOADER. Po zainstalowaniu znajdziesz polecenie „przeładuj ulubione ikony” w menu rozwijanym BOOKMARKS.

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

bgc
źródło
Jest tam z powrotem do instalacji i naprawdę wygląda obiecująco (znajdziesz AddOn w menu zakładek), ale także nie załadował ponownie ikony na moim firefoxie 34 (na Linuksie) bez restartu
rubo77
4

Jeśli używasz PHP .., możesz również użyć tej linii.

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

Odświeży twój ulubiony przy każdym ładowaniu strony.

Shakeel Ahmed
źródło
2
Na tym polega problem „Odświeżanie ulubionych przy każdym ładowaniu strony”. Co powiesz na buforowanie? Favicon powinien być buforowany.
machineaddict
Jeśli chcesz buforować swój nowy favicon .. po prostu podaj dowolną nową wartość, taką jak .. <link rel = "ikona skrótu" href = " yoursite.com/favicon.ico?v=12345 ">
Shakeel Ahmed
2
favicon.ico? v = <? php echo md5_file ('favicon.ico') zgodnie z sugestią Felixa Wienberga @machineaddict
Sven van den Boogaart
1
To nie jest dobry sposób na rozwiązanie tego problemu. Użycie time () zmusi go do ponownego załadowania ikony za każdym razem. Chcesz, aby czas ostatniej modyfikacji pliku favicon.ico nie był bieżącym czasem zegara ściennego.
NickG
co jeśli zaokrąglisz do najbliższych 24 godzin lub najbliższych 30 dni? przydałby się comiesięczny reset pamięci podręcznej
SwiftNinjaPro
3

Jeśli chcesz tylko debugować go, aby upewnić się, że się zmienił, możesz po prostu dodać fikcyjny wpis do pliku / etc / hosts i nacisnąć nowy adres URL. Ten favicon nie będzie już buforowany i możesz upewnić się, że nowy działa.

Poza zmianą nazwy favicon, nie ma sposobu, aby zmusić użytkowników do otrzymania nowej kopii

cpjolicoeur
źródło
2

Działa to w Chrome:

  • na Macu: usuń plik

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

  • w systemie Windows: usuń pliki

    C: \ Users [nazwa użytkownika] \ AppData \ Local \ Google \ Chrome \ User Data \ Default \ Favicons C: \ Users [nazwa użytkownika] \ AppData \ Local \ Google \ Chrome \ User Data \ Default \ Favicons-journal

źródło

Nikołaj Koudelia
źródło
1

Jest to obejście problemu z błędem chrome: zmień atrybut rel na arkusz stylów! Zachowaj jednak oryginalny link. Działa jak marzenie:

Wymyśliłem to obejście, ponieważ mamy również wymaganie, aby móc aktualizować strony / kod produkcyjny klienta i nie znalazłem żadnego innego rozwiązania, które działałoby.

użytkownik1427015
źródło
1
Próbowałem dosłownie każdego rozwiązania sugestii (kodowania) tutaj i to jest jedyne, które działało dla mnie. Czy masz pojęcie dlaczego?
Crystal Miller,
1

Wiem, że to jest naprawdę stare pytanie, ale wciąż aktualne, choć obecnie dotyczy tylko Mozilli. (Nie mam pojęcia, co robi eksplorator, bo nie kodujemy niestandardowych przeglądarek).

Chrome zachowuje się dobrze, jeśli w nagłówku znajduje się tag ikony.

Chociaż Mozilla dobrze zdaje sobie sprawę z tego problemu, jak zwykle, nigdy nie naprawia irytujących drobiazgów. Nawet 6 lat później.

Istnieją dwa sposoby wymuszenia odświeżenia ikony za pomocą Firefoxa.

  1. Niech wszyscy klienci odinstalują Firefoksa. Następnie zainstaluj ponownie.

  2. Wpisz ręcznie domenę na pasku adresu URL - nie używaj http ani www tylko domeny (mydomain.com).

Zakłada się oczywiście, że twoje rekordy ns obejmują rozpoznawanie tylko dla nazwy domeny.

rockmo
źródło
1

Prosty,

1: Nie chcę majstrować przy kodach (ps mój kreator stron nie używa kodów, używa przycisku „prześlij plik” i robi to sam)

2: Próbowałem CTRL+ F5i to nie działa dla mnie, więc ...

MAM ROZWIĄZANIE:

IE: Wyczyść całą historię przeglądarki i pliki cookie, przechodząc do ustawień cog O

Chrome: przejdź do menu w prawym górnym rogu poniżej X, które wygląda jak =, a następnie przejdź do ustawień, historii, USUŃ PRZEGLĄDANIE DANYCH i zaznacz wszystkie odpowiednie pola (zrobiłem historię, pliki cookie i opróżniłem catche z początek czasu)

Robert
źródło
4
pytanie dotyczy sposobu buforowania ulubionych. Wyczyszczenie lokalnej pamięci podręcznej rozwiąże problem dla ciebie, ale nie dla nikogo innego.
Mark Chorley
@MarkChorley, o to właśnie chodzi w pierwotnym pytaniu. Buforowanie ulubionych w lokalnym środowisku programistycznym.
MrUpsidown,
1

Wystarczy zmienić tę nazwę pliku = 'favicon1.ico'

Armin Alibasic
źródło
0

Oto, w jaki sposób udało mi się to za pomocą po prostu animowanego favicon i FireFox 3.6.13 (wersja beta) Prawdopodobnie będzie działać również w innych wersjach FireFox, daj mi znać, jeśli nie działa. Jest to w zasadzie rozwiązanie artlung, ale także adresujące plik .gif:

  1. Otworzyłem za pomocą programu FTP, pobrałem moje pliki favicon.ico ORAZ favicon.gif,
  2. następnie usunąłem je z plików mojego serwera.
  3. Następnie otworzyłem je w mojej przeglądarce, zgodnie z sugestią artlung: http://mysite.com/favicon.ico AND http://mysite.com/favicon.gif Po załadowaniu tych adresów i wyświetleniu 404 stron błędów („nie znaleziono strony”)
  4. Następnie przesłałem oba pliki z powrotem na mój serwer, a PRESTO - właściwe ikony zostały natychmiast wyświetlone.
ptaki liniowe
źródło
1
Och - BTW, aby wyświetlić nowe, musiałem również usunąć zapisaną zakładkę - i ta sama procedura działała również w Google Chrome.
lineofbirds
0

Upewnij się także, że umieścisz pełny adres URL obrazu, a nie tylko jego ścieżkę względną:

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

I nie:

images/favicon.ico
Amr Elgarhy
źródło
3
/images/favicon.icoto właściwy sposób: „po prostu działa” w różnych środowiskach (program / test / produkcja) i jest ścieżką bezwzględną - od podstawowego adresu URL dokumentu.
ANeves
Niestety potrzebujesz pełnego adresu URL dla IE7 (i IE8?) - patrz jeffcode.blogspot.com.au/2007/12/…
eug
2
To naprawdę nie jest odpowiedź, to jest komentarz.
Zac
0

Jeśli problem będzie występował pomimo wykonania powyższych kroków, spróbuj ponownie uruchomić serwer IIS . Mam nadzieję że to pomoże...

Murat Yıldız
źródło
-3

Simon, przypuszczam, że istnieje powód, dla którego żadna inna odpowiedź nie została jak dotąd zaakceptowana. Dlatego wierzę, że tak być problem z Grails - zwłaszcza jeśli używasz „wtyczki zasobów”.

Jeśli twoje wtyczki dostarczają favicon (co - nielogicznie - wiele osób tak robi), mogą zastąpić ten, którego chcesz użyć - pod warunkiem, że twój jest w samej wtyczce.

Jeśli tymczasowe usunięcie favicon ze wszystkich wtyczek rozwiązuje problem, najprawdopodobniej występują następujące problemy:

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

użytkownik569825
źródło
-3

Wykonaj poniższe czynności, aby zmienić ikonę aplikacji:

  1. Dodaj swój plik .ico do projektu.
  2. Przejdź do angular.json, w którym „projekty” -> „architekt” -> „kompilacja” -> „opcje” -> „zasoby” i tutaj wprowadź wpis dla swojego pliku ikony. Zapoznaj się z istniejącym wpisem favicon.ico, aby dowiedzieć się, jak to zrobić.
  3. Przejdź do index.html i zaktualizuj ścieżkę do pliku ikony. Na przykład,

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

Alternatywnie zmień nazwę pliku ikony na favicon.ico i zastąp go w katalogu.

  1. Uruchom ponownie serwer.
  2. Twarde odświeżanie przeglądarki i gotowe.
Rut Shah
źródło