MIME-Typ-Nachschlag
MIME-Typen nach Dateiendung nachschlagen
Text
text/plaintext/htmltext/csstext/javascripttext/csvtext/xmltext/markdowntext/calendarApplication
application/jsonapplication/xmlapplication/pdfapplication/zipapplication/gzipapplication/x-tarapplication/x-7z-compressedapplication/x-rar-compressedapplication/javascriptapplication/typescriptapplication/wasmapplication/octet-streamapplication/x-www-form-urlencodedapplication/ld+jsonOffice
application/mswordapplication/vnd.openxmlformats-officedocument.wordprocessingml.documentapplication/vnd.ms-excelapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheetapplication/vnd.ms-powerpointapplication/vnd.openxmlformats-officedocument.presentationml.presentationImage
image/jpegimage/pngimage/gifimage/webpimage/svg+xmlimage/bmpimage/tiffimage/x-iconimage/avifimage/heicAudio
audio/mpegaudio/wavaudio/oggaudio/webmaudio/aacaudio/flacaudio/midiVideo
video/mp4video/webmvideo/oggvideo/quicktimevideo/x-msvideovideo/x-matroskavideo/x-flvFont
font/wofffont/woff2font/ttffont/otfapplication/vnd.ms-fontobjectMultipart
multipart/form-datamultipart/byterangesAbout MIME Types
MIME (Multipurpose Internet Mail Extensions) types indicate the nature and format of a file. They're used in HTTP headers, email attachments, and more. The format is type/subtype.
Die MIME-Typ-Suche bietet eine bidirektionale Suche zwischen Dateierweiterungen und MIME-Typen (auch Medientypen oder Content-Typen genannt) und hilft Ihnen, den korrekten Content-Type-Header fuer jedes Dateiformat zu finden oder zu identifizieren, welche Erweiterungen einem bestimmten MIME-Typ zugeordnet sind. Geben Sie .woff2 ein, um zu erfahren, dass der korrekte Typ font/woff2 ist, oder suchen Sie nach application/json, um alle zugehoerigen Erweiterungen wie .json, .map und .geojson zu sehen.
MIME-Typen verstehen
MIME-Typen -- urspruenglich "Multipurpose Internet Mail Extensions", aber heute weit ueber E-Mail hinaus verwendet -- sind die Standardmethode zur Identifizierung von Dateiformaten im Web. Wenn ein Webserver eine Datei an Ihren Browser sendet, enthaelt er einen Content-Type-Header mit dem MIME-Typ, und der Browser verwendet diesen Typ, um zu entscheiden, wie die Antwort behandelt wird. Eine HTML-Datei wird als Seite gerendert, ein PNG wird als Bild angezeigt, ein PDF oeffnet sich im Viewer und eine ZIP-Datei wird als Download angeboten. Ohne den korrekten MIME-Typ muss der Browser raten, und Raten geht oft schief.
Der Grund, warum MIME-Typen wichtiger sind als Dateierweiterungen, ist, dass HTTP-Antworten keine Dateinamen tragen. Wenn Ihr Browser https://example.com/api/data anfordert, gibt es keine .json-Erweiterung als Hinweis auf das Format -- der Browser verlaesst sich vollstaendig auf den Content-Type: application/json-Header, um zu wissen, dass er JSON erhaelt. Wenn der Server stattdessen text/plain sendet, zeigt der Browser den Rohtext an, anstatt ihn als strukturierte Daten zu parsen. Und mit dem Sicherheits-Header X-Content-Type-Options: nosniff (den alle modernen Anwendungen setzen sollten) erzwingt der Browser strikt den deklarierten MIME-Typ und versucht nicht, ihn aus dem Inhalt zu erraten.
Fuer Webentwickler entstehen die haeufigsten MIME-Typ-Probleme durch Fehlkonfiguration des Servers. Ein neues Schriftformat wie .woff2 wird als application/octet-stream ausgeliefert, weil der Server keine Zuordnung fuer diese Erweiterung hat, was dazu fuehrt, dass der Browser die Datei herunterlaed, anstatt sie als Schrift zu verwenden. Eine JavaScript-Datei wird als text/plain ausgeliefert und vom MIME-Check des Browsers blockiert. Eine SVG-Datei wird ohne das +xml-Suffix ausgeliefert und wird nicht gerendert. Dieses Suchtool hilft Ihnen, den korrekten Typ schnell zu finden, damit Sie Ihre Serverkonfiguration mit Sicherheit aktualisieren koennen.
So suchen Sie einen MIME-Typ
- Geben Sie eine Dateierweiterung (z.B.
.json,.webp,.woff2) oder einen MIME-Typ (z.B.application/pdf,image/svg+xml) ein. - Sehen Sie das passende Ergebnis mit dem primaeren MIME-Typ, alternativen Typen und Browser-Kompatibilitaetshinweisen.
- Kopieren Sie den korrekten
Content-Type-Wert zur Verwendung in der Serverkonfiguration oder in HTTP-Headern.
Beispiele fuer die MIME-Typ-Suche
Suche nach Dateierweiterung
| Erweiterung | Primaerer MIME-Typ | Alternativen / Hinweise |
|---|---|---|
.html | text/html | -- |
.css | text/css | -- |
.js | application/javascript | Veraltet: text/javascript (noch weit verbreitet) |
.json | application/json | -- |
.xml | application/xml | Auch: text/xml |
.svg | image/svg+xml | -- |
.png | image/png | -- |
.jpg / .jpeg | image/jpeg | -- |
.webp | image/webp | -- |
.avif | image/avif | Modernes Format, Browser-Unterstuetzung pruefen |
.gif | image/gif | -- |
.pdf | application/pdf | -- |
.woff2 | font/woff2 | -- |
.woff | font/woff | Veraltet: application/font-woff |
.mp4 | video/mp4 | -- |
.webm | video/webm | -- |
.zip | application/zip | -- |
.gz | application/gzip | -- |
.csv | text/csv | -- |
.md | text/markdown | Nicht universell von Servern erkannt |
Suche nach MIME-Typ
| MIME-Typ | Zugehoerige Erweiterungen |
|---|---|
application/octet-stream | .bin, .exe, .dll, .iso und jede unbekannte Binaerdatei |
text/plain | .txt, .log, .ini, .cfg |
application/json | .json, .map, .topojson, .geojson |
image/jpeg | .jpg, .jpeg, .jfif |
application/xml | .xml, .xsl, .xsd, .rng |
Wann die MIME-Typ-Suche verwenden
- Content-Typen des Webservers konfigurieren -- Den korrekten
Content-Typefuer statische Dateien festlegen, die von nginx, Apache oder IIS ausgeliefert werden, um Download-statt-Anzeige-Probleme zu vermeiden. - Download-Header setzen -- Den richtigen MIME-Typ in
Content-Type- undContent-Disposition-Headern fuer Dateidownloads verwenden. - Datei-Uploads validieren -- Hochgeladene Dateien gegen erwartete MIME-Typen pruefen, um nicht unterstuetzte Formate abzulehnen.
- "Datei nicht erkannt"-Fehler debuggen -- Identifizieren, wenn ein Server den falschen MIME-Typ sendet, was dazu fuehrt, dass Browser die Datei falsch behandeln.
- CDN-Caching konfigurieren -- Korrekte MIME-Typen setzen, damit CDNs geeignete Caching- und Komprimierungsregeln anwenden.
- E-Mail-Anhang-Behandlung -- Den korrekten Typ beim Erstellen von MIME-Multipart-Nachrichten fuer E-Mail-Anhaenge verwenden.
Wie MIME-Typen funktionieren
MIME-Typ-Struktur
Ein MIME-Typ folgt dem Format type/subtype, optional mit Parametern:
type/subtype; parameter=value
Der Typ ist die allgemeine Kategorie (text, image, audio, video, application, font, multipart). Der Subtyp ist das spezifische Format. Zum Beispiel ist image/png ein Bild im PNG-Format.
Gaengige Parameter
charset-- Zeichenkodierung fuer Text-Typen:text/html; charset=utf-8boundary-- Trennzeichen fuer Multipart-Typen:multipart/form-data; boundary=----FormBoundaryname-- Vorschlag fuer den urspruenglichen Dateinamen in manchen Kontexten
Warum korrekte MIME-Typen wichtig sind
Browser verwenden MIME-Typen, nicht Dateierweiterungen, um zu entscheiden, wie eine Antwort behandelt wird:
- Falscher MIME-Typ fuer CSS -- Wenn ein Server
text/plainfuer eine.css-Datei sendet, weigert sich der Browser, die Styles anzuwenden, und protokolliert einen MIME-Typ-Fehler. - Falscher MIME-Typ fuer JavaScript -- Das Ausliefern von
.js-Dateien alstext/plainfuehrt dazu, dass der Browser das Skript im strikten MIME-Pruefmodus ablehnt. - Sicherheit:
X-Content-Type-Options: nosniff-- Wenn dieser Header gesetzt ist, erzwingt der Browser MIME-Typen strikt und versucht nicht, den Typ aus dem Inhalt zu erraten, was eine korrekte Konfiguration unabdingbar macht.
application/octet-stream als Standard
Wenn ein Server den Dateityp nicht kennt, verwendet er application/octet-stream als generischen Binaertyp. Dies signalisiert dem Browser, die Datei herunterzuladen, anstatt zu versuchen, sie anzuzeigen. Die Konfiguration spezifischer MIME-Typen fuer bekannte Erweiterungen vermeidet dieses Fallback-Verhalten.
Hersteller- und persoenliche MIME-Typen
MIME-Typen verwenden Namenskonventionen, um ihren Registrierungsstatus anzuzeigen:
| Praefix | Bedeutung | Beispiel |
|---|---|---|
| (keines) | Standard-registrierter Typ | application/json |
vnd. | Herstellerspezifischer Typ | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (.xlsx) |
x- | Nicht registriert, experimentell (veraltet) | application/x-www-form-urlencoded |
prs. | Persoenlich/experimentell | text/prs.lines.tag |
Praktische Tipps fuer die MIME-Typ-Konfiguration
Der haeufigste Fehler bei der MIME-Typ-Konfiguration ist, sie gar nicht erst vorzunehmen. Die meisten Webserver werden mit einem Standardsatz von Zuordnungen ausgeliefert, der jedoch bei modernen Dateiformaten oft hinterherhinkt. Wenn Sie .woff2-Schriften, .webp- oder .avif-Bilder oder .mjs ES-Module-Dateien ausliefern, pruefen Sie, ob Ihr Server die korrekten Zuordnungen hat. In nginx befinden sich diese Zuordnungen in der Datei mime.types. In Apache sind sie in mime.types oder werden ueber AddType-Direktiven konfiguriert. Eine fehlende Zuordnung bedeutet, dass der Server auf application/octet-stream zurueckfaellt, was einen Download-Dialog ausloest, anstatt den Inhalt inline darzustellen.
Beim Erstellen von APIs setzen Sie den Content-Type-Header immer explizit in Ihrer Antwort, anstatt sich auf Framework-Standardwerte zu verlassen. Wenn Ihre API JSON zurueckgibt, setzen Sie Content-Type: application/json; charset=utf-8. Wenn sie XML zurueckgibt, verwenden Sie application/xml. Fuer APIs, die basierend auf dem Accept-Header mehrere Formate zurueckgeben koennen (Content Negotiation), stellen Sie sicher, dass jedes Format den korrekten MIME-Typ hat. Eine Diskrepanz zwischen dem deklarierten Typ und dem tatsaechlichen Body-Format ist eine haeufige Ursache fuer Parsing-Fehler auf der Client-Seite.
Fuer die Validierung von Datei-Uploads verlassen Sie sich niemals allein auf den vom Client gesendeten MIME-Typ. Der Content-Type in einem Multipart-Upload wird vom Browser basierend auf der Dateierweiterung gesetzt und kann leicht gefaelscht werden. Ein boeswilliger Benutzer kann eine ausfuehrbare Datei mit einer .jpg-Erweiterung hochladen, und der Browser sendet image/jpeg als Typ. Validieren Sie immer den tatsaechlichen Dateiinhalt (Magic Bytes) auf der Serverseite zusaetzlich zur Pruefung des deklarierten MIME-Typs.
Haeufig gestellte Fragen
Was ist der korrekte MIME-Typ fuer JavaScript: application/javascript oder text/javascript?
application/javascript ist der standardmaessig registrierte Typ (RFC 4329). Allerdings ist text/javascript als einziger JavaScript-MIME-Typ in der HTML-Spezifikation aufgefuehrt, und alle Browser unterstuetzen ihn. In der Praxis funktionieren beide. Wenn Sie einen neuen Server konfigurieren, ist beides akzeptabel, wobei text/javascript breitere Legacy-Kompatibilitaet bietet.
Sollte ich image/svg+xml oder image/svg fuer SVG-Dateien verwenden?
Verwenden Sie immer image/svg+xml. Das +xml-Suffix zeigt an, dass SVG ein XML-basiertes Format ist. image/svg ist kein registrierter MIME-Typ und wird moeglicherweise von Browsern oder Validatoren nicht erkannt.
Welchen MIME-Typ sollte ich fuer JSON-API-Antworten verwenden?
Verwenden Sie application/json. Dies ist der in RFC 8259 definierte Standard-MIME-Typ. Einige APIs verwenden auch application/vnd.api+json fuer das JSON:API-Format oder application/problem+json fuer RFC-7807-Fehlerantworten.
Was ist der Unterschied zwischen text/xml und application/xml?
Beide sind fuer XML-Inhalte gueltig, aber application/xml wird fuer den allgemeinen Gebrauch empfohlen. Der Typ text/xml impliziert, dass der Inhalt menschenlesbarer Text ist, und aeltere Spezifikationen besagen, dass standardmaessig US-ASCII-Kodierung verwendet werden soll, wenn kein Charset angegeben ist. application/xml verwendet standardmaessig UTF-8, was fast immer das ist, was Sie wollen.
Wie bestimme ich den MIME-Typ einer unbekannten Datei?
Unter Linux und macOS kann der Befehl file den Typ anhand des Dateiinhalts (Magic Bytes) erkennen: file --mime-type unknown.bin. Dies ist zuverlaessiger als sich auf die Erweiterung zu verlassen. Im Web sendet der Browser den MIME-Typ basierend auf der Erweiterung, der moeglicherweise nicht mit dem tatsaechlichen Inhalt uebereinstimmt.
Warum wird meine Schriftdatei heruntergeladen, anstatt im Browser geladen zu werden?
Ihr Server sendet die Schrift wahrscheinlich mit application/octet-stream, weil er keine Zuordnung fuer die Schrift-Erweiterung hat. Fuegen Sie die korrekte MIME-Typ-Zuordnung hinzu: font/woff2 fuer .woff2, font/woff fuer .woff, font/ttf fuer .ttf und font/otf fuer .otf. Nach dem Hinzufuegen der Zuordnung laedt der Browser die Schrift inline, anstatt einen Download anzubieten.
Verwandte Tools
- HTTP-Header-Formatierer - Content-Type und andere HTTP-Header formatieren
- HTTP-Statuscode-Suche - Statuscodes nachschlagen, die zusammen mit MIME-Typ-Headern zurueckgegeben werden
- CORS-Header-Erklaerung - CORS-Regeln fuer verschiedene Content-Typen verstehen
- curl-Befehl-Builder - curl-Befehle mit korrekten Content-Type-Headern erstellen
- User-Agent-Parser - User-Agent-Zeichenketten parsen, um die MIME-Typ-Unterstuetzung des Browsers zu pruefen