favicon.ico: Was es ist und ob du noch eines brauchst
favicon.ico ist die Icon-Datei, die Browser von der Wurzel deiner Domain unter /favicon.ico anfragen, wenn eine Seite kein eigenes Icon deklariert. Es ist ein ICO-Container, sodass eine einzelne Datei mehrere Bitmaps auf einmal enthalten kann (meist 16x16, 32x32 und 48x48), und der Client wählt die benötigte Größe. Du willst weiterhin eines, weil Crawler, Feed-Reader und Link-Vorschau-Bots genau diesen Pfad anfragen, ohne dein HTML zu lesen.
Eine Konvention, kein Standard
Der Pfad /favicon.ico wurde nie von irgendjemandem spezifiziert; Internet Explorer 5 fragte ihn an, und der Rest des Webs folgte. Deshalb funktioniert er ganz ohne Markup. Ein Browser, der kein Icon-Link-Tag auf deiner Seite findet, fragt den Server einfach nach diesem Pfad und verwendet, was zurückkommt.
Der Nebeneffekt ist, dass die Anfrage stattfindet, ob du die Datei hast oder nicht. Fehlt sie, protokolliert der Server für jeden Besucher einen 404, und jedes Tool, das nur diesen Pfad prüft, zeigt einen leeren Platzhalter für deine Website.
Was in einer typischen favicon.ico steckt
| Eintrag | Verwendet für |
|---|---|
| 16x16 | Adressleiste, Lesezeichenlisten, Verlaufseinträge |
| 32x32 | Browser-Tabs auf Displays mit Standarddichte |
| 48x48 | Windows-Verknüpfungen und Tabs höherer Dichte |
Wohin die Datei gehört
- public/
- favicon.icoaddServed at /favicon.ico
- favicon-32x32.pngPrimary tab icon
- apple-touch-icon.pngiOS Home Screen
Sie muss im Website-Root aufgelöst werden, nicht in einem Unterverzeichnis. Die meisten Frameworks mappen ein public- oder static-Verzeichnis genau deshalb auf den Root; einige, darunter aktuelles Next.js, akzeptieren auch ein app/favicon.ico und verdrahten das Tag für dich.
Es explizit deklarieren
<link rel="icon" href="/favicon.ico" sizes="any">Optional, da der Pfad ohnehin angefragt wird, aber es lohnt sich: Es macht den Icon-Satz im Markup sichtbar und erlaubt dir, mit einem Query-String Cache-Busting zu betreiben, wenn sich das Icon ändert.
FAQ zu favicon.ico
Kann favicon.ico tatsächlich ein PNG sein?
Browser prüfen den Inhalt, statt der Endung zu vertrauen, sodass ein PNG, das unter /favicon.ico ausgeliefert wird, meist funktioniert. Es ist trotzdem eine schlechte Idee. Du verlierst das Mehrgrößen-Verhalten, das der einzige Grund für diesen Pfad ist, und striktere Consumer könnten es ablehnen.
Wie stoppe ich die 404s in meinen Logs?
Liefere die Datei aus. Die Log-Zeile zu unterdrücken verdeckt das Symptom, während jedes Tool, das den Pfad anfragt, weiterhin nichts zurückbekommt.
Muss die Datei im Root liegen?
Für die automatische Anfrage ja. Clients fragen konkret nach /favicon.ico. Du kannst ein Icon von jedem Pfad ausliefern, wenn du mit einem Link-Tag darauf verweist, aber die Root-Datei ist das, was Clients abdeckt, die dein HTML nie parsen.