ToolActToolAct

Referencia de tipos MIME

Busqueda rápida de tipos MIME por extensión de archivo con búsqueda y filtrado por categoría

Total 115 个类型

Documento(17)

.pdf

application/pdf

.doc

application/msword

.docx

application/vnd.openxmlformats-officedocument.wordprocessingml.document

.xls

application/vnd.ms-excel

.xlsx

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

.ppt

application/vnd.ms-powerpoint

.pptx

application/vnd.openxmlformats-officedocument.presentationml.presentation

.txt

text/plain

.rtf

application/rtf

.odt

application/vnd.oasis.opendocument.text

.ods

application/vnd.oasis.opendocument.spreadsheet

.odp

application/vnd.oasis.opendocument.presentation

.csv

text/csv

.json

application/json

.xml

application/xml

.html

text/html

.htm

text/html

Imagen(15)

.jpg

image/jpeg

.jpeg

image/jpeg

.png

image/png

.gif

image/gif

.webp

image/webp

.svg

image/svg+xml

.ico

image/x-icon

.bmp

image/bmp

.tiff

image/tiff

.tif

image/tiff

.avif

image/avif

.heic

image/heic

.heif

image/heif

.psd

image/vnd.adobe.photoshop

.raw

image/raw

Audio(10)

.mp3

audio/mpeg

.wav

audio/wav

.ogg

audio/ogg

.m4a

audio/mp4

.flac

audio/flac

.aac

audio/aac

.wma

audio/x-ms-wma

.aiff

audio/aiff

.mid

audio/midi

.midi

audio/midi

Video(12)

.mp4

video/mp4

.webm

video/webm

.avi

video/x-msvideo

.mov

video/quicktime

.wmv

video/x-ms-wmv

.flv

video/x-flv

.mkv

video/x-matroska

.m4v

video/mp4

.mpeg

video/mpeg

.mpg

video/mpeg

.3gp

video/3gpp

.m2ts

video/mp2t

Archivo(9)

.zip

application/zip

.rar

application/vnd.rar

.7z

application/x-7z-compressed

.tar

application/x-tar

.gz

application/gzip

.bz2

application/x-bzip2

.xz

application/x-xz

.iso

application/x-iso9660-image

.dmg

application/x-apple-diskimage

Código(31)

.js

application/javascript

.mjs

application/javascript

.ts

application/typescript

.tsx

application/typescript

.jsx

application/javascript

.css

text/css

.scss

text/x-scss

.sass

text/x-sass

.less

text/x-less

.py

text/x-python

.java

text/x-java

.c

text/x-c

.cpp

text/x-c++

.h

text/x-c

.hpp

text/x-c++

.cs

text/x-csharp

.go

text/x-go

.rs

text/x-rust

.rb

text/x-ruby

.php

text/x-php

.swift

text/x-swift

.kt

text/x-kotlin

.sql

application/sql

.sh

application/x-sh

.bash

application/x-sh

.yaml

application/x-yaml

.yml

application/x-yaml

.toml

application/toml

.ini

text/x-ini

.vue

text/x-vue

.svelte

text/x-svelte

Fuente(5)

.woff

font/woff

.woff2

font/woff2

.ttf

font/ttf

.otf

font/otf

.eot

application/vnd.ms-fontobject

Otros(16)

.exe

application/vnd.microsoft.portable-executable

.msi

application/x-msi

.apk

application/vnd.android.package-archive

.ipa

application/octet-stream

.deb

application/vnd.debian.binary-package

.rpm

application/x-rpm

.jar

application/java-archive

.war

application/java-archive

.swf

application/x-shockwave-flash

.crx

application/x-chrome-extension

.xpi

application/x-xpinstall

.torrent

application/x-bittorrent

.ics

text/calendar

.vcf

text/vcard

.epub

application/epub+zip

.mobi

application/x-mobipocket-ebook

¿Qué es un tipo MIME?

Los tipos MIME (Extensiones de Correo de Internet de Propósito Múltiple) son un estándar para indicar la naturaleza y formato de documentos, archivos o flujos de bytes. Los navegadores y servidores usan tipos MIME para determinar cómo manejar el contenido. Por ejemplo, recibir image/jpeg indica al navegador mostrar una imagen. Los tipos MIME describen qué clase de contenido contiene un archivo o respuesta HTTP, como text/html, application/json, image/png o application/pdf. Afectan renderizado del navegador, descargas, parseo de APIs, validación de subidas, caché y comportamiento de seguridad. Extensión y MIME no siempre coinciden, por lo que conviene revisarlos al diagnosticar configuración de servidor, archivos desconocidos o problemas de carga. Por seguridad, no deben confiarse a ciegas; inspección de contenido, reglas de extensión y lista permitida deben usarse juntas.

Cómo usar

Referencia rápida

  1. Usa el buscador para encontrar extensiones o tipos MIME concretos
  2. Pulsa las etiquetas de categoría para filtrar por tipo de archivo
  3. Pulsa los botones 'Ext' o 'MIME' para copiar el contenido correspondiente
  4. Explora las categorías para una consulta rápida: documentos, imágenes, audio, vídeo, archivos comprimidos, código, fuentes, etc.

Notas de consulta

  • Los tipos MIME son convenciones usadas por servidores, navegadores y aplicaciones; la extensión del archivo por sí sola no garantiza su contenido real.
  • En subidas y comprobaciones de seguridad, valida tanto el tipo MIME declarado como la firma del archivo cuando sea posible.

Casos de uso

Buscar tipos MIME por extensiónBusca extensiones o cadenas MIME en documentos, imágenes, audio, vídeo, archivos comprimidos, código, fuentes y otros tipos de archivo comunes. Los resultados permanecen agrupados por categoría cuando el filtro de todos está activo, facilitando la exploración general más que una tabla plana única. La búsqueda de texto completo funciona tanto sobre la extensión (png, webp, json) como sobre el valor MIME (image/png, application/json), por lo que la misma consulta maneja ambos puntos de partida.
Copiar valores para cabeceras de subida y respuestaCada tarjeta permite copiar la extensión o el valor MIME, lo que resulta práctico al configurar listas de aceptación de subida de archivos, cabeceras Content-Type, metadatos de almacenamiento, reglas de CDN o mapas de validación del backend. La referencia está integrada en la página, por lo que funciona sin conexión y en portátiles internos sin acceso a internet al registro de IANA. El botón de copia escribe el valor literal en el portapapeles sin espacios finales ni comillas.
Verificar la cobertura de categorías al construir funciones de archivosLos filtros de categoría y el conteo de resultados ayudan a los equipos de producto e ingeniería a decidir qué familias de archivos reconoce actualmente una función. Es una referencia rápida para formatos comunes más que un registro completo de estándares. Un pequeño vacío en la sección de archivos comprimidos o fuentes suele señalar una función que rechaza subidas silenciosamente.
Construir cabeceras Content-Type para respuestas de API RESTCopia valores exactos como application/vnd.api+json o application/x-ndjson en llamadas a response.setHeader(). Verifica sufijos inusuales con el filtro de categoría para que las respuestas JSON-LD, GeoJSON o WebAssembly no se confundan con texto plano. Las convenciones vendor-specific +json y +xml (RFC 6839) llevan información significativa sobre la estructura del payload, por lo que un error tipográfico aquí suele romper el parser del cliente.
Cubrir IANA, experimentales con prefijo x- y content sniffingEl registro de IANA es la fuente canónica de tipos MIME registrados, pero no lista todos los valores en uso: las entradas experimentales usan el prefijo x- (application/x-tar, application/x-rar-compressed) y nunca se han estandarizado, aunque aparecen en los archivos mime.types de nginx y Apache. Para seguridad, el content sniffing (leer los bytes mágicos al inicio de un archivo) es más fiable que confiar en la cabecera Content-Type declarada, y los navegadores modernos envían X-Content-Type-Options: nosniff para desactivar el fallback de sniffing heredado. Usa la tabla de búsqueda para encontrar un valor de cabecera, luego valida los bytes reales en el servidor antes de servir el archivo.

Principio técnico

Los tipos MIME (Multipurpose Internet Mail Extensions) son identificadores estandarizados para formatos de datos, definidos originalmente en RFC 2045/RFC 2046 para adjuntos de correo electrónico y adoptados posteriormente por HTTP (RFC 7231 §3.1.1.5) para la negociación de contenido web. Un tipo MIME tiene la estructura tipo/subtipo: el tipo declara la categoría general (text, image, audio, video, application, multipart, font, model) y el subtipo especifica el formato exacto (por ejemplo, text/html, image/png, application/json). Los parámetros opcionales siguen tras un punto y coma (text/html; charset=utf-8). La Internet Assigned Numbers Authority (IANA) mantiene el registro oficial de tipos MIME en iana.org/assignments/media-types. El registro sigue el proceso definido en RFC 6838, que requiere un documento de especificación, consideraciones de seguridad y notas de interoperabilidad. Los tipos no registrados pueden usar el prefijo x- (por ejemplo, application/x-tar) como convención para formatos experimentales o específicos de un fabricante, aunque RFC 6648 recomienda evitar el prefijo x- en favor de un registro adecuado. En HTTP, la cabecera Content-Type indica al cliente cómo interpretar el cuerpo de la respuesta. Un servidor que devuelve Content-Type: image/svg+xml activa el renderizador SVG del navegador; Content-Type: application/octet-stream provoca un aviso de descarga porque el navegador no puede determinar el formato. El navegador también usa la información de tipo MIME para el content sniffing: cuando el servidor omite Content-Type o envía un tipo genérico, el navegador puede inspeccionar los primeros bytes de la respuesta (magic bytes) para adivinar el formato real. Este comportamiento se controla con la cabecera X-Content-Type-Options: nosniff, que desactiva el sniffing y exige al servidor declarar el tipo correcto. Para subidas de archivos, la cabecera Accept indica al servidor qué tipos MIME espera el cliente en la respuesta, mientras que el atributo accept del elemento input restringe el selector de archivos a tipos específicos (por ejemplo, accept="image/png, image/jpeg"). En el servidor, los archivos subidos deben validarse tanto por su tipo MIME declarado como por su firma de archivo (magic bytes), ya que ninguno de los dos es fiable por sí solo: un archivo llamado image.png con Content-Type: image/png podría contener código ejecutable. La herramienta sirve como referencia para buscar el tipo MIME canónico de una extensión de archivo concreta, cubriendo más de 100 formatos comunes en ocho categorías.

  • Estructura RFC 2046: tipo/subtipo — el tipo indica la categoría general del contenido y el subtipo el formato exacto; los parámetros opcionales siguen tras un punto y coma (text/html; charset=utf-8) y son insensibles a mayúsculas según la especificación, aunque por convención se escriben en minúsculas.
  • Registro IANA (RFC 6838): los nuevos tipos de medios requieren un documento de especificación, una sección de consideraciones de seguridad y notas de interoperabilidad; el proceso de revisión garantiza que los tipos estén bien documentados y se eviten conflictos antes de entrar en el registro.
  • Cabecera HTTP Content-Type: el servidor declara el tipo MIME del cuerpo de la respuesta; los navegadores lo usan para seleccionar el renderizador adecuado (analizador HTML, decodificador de imágenes, visor de PDF) o activar una descarga — un Content-Type incorrecto es la causa más frecuente de errores donde 'el archivo se descarga en lugar de mostrarse'.
  • Content sniffing y X-Content-Type-Options: cuando Content-Type falta o es genérico, los navegadores pueden inspeccionar los magic bytes para adivinar el formato; X-Content-Type-Options: nosniff desactiva este comportamiento y exige una coincidencia exacta de Content-Type, lo cual es una buena práctica de seguridad.
  • application/octet-stream: el tipo genérico de respaldo para binarios — los navegadores lo tratan como un flujo opaco y activan una descarga, convirtiéndolo en la opción más segura por defecto cuando el servidor no puede determinar el formato, pero impide la vista previa en el navegador de contenido que de otro modo sería visible.
  • Validación de subida de archivos: el atributo accept del input filtra el selector de archivos en el cliente, pero la validación en el servidor debe comprobar tanto el Content-Type declarado como los magic bytes del archivo; una discrepancia entre extensión, tipo MIME y firma de archivo es una señal de alerta ante subidas maliciosas.
  • Tipos específicos de fabricantes y experimentales: la convención del prefijo x- (application/x-tar, video/x-matroska) es anterior al proceso formal de registro; RFC 6648 recomienda migrar estos tipos a registros IANA adecuados siempre que sea posible, pero muchos siguen en uso generalizado.

Ejemplos

Configuración de mime.types en Nginx

types {
  text/html             html htm;
  image/jpeg            jpg jpeg;
  application/pdf       pdf;
  application/javascript js;
}

Nota: cada línea asocia un tipo MIME con una o más extensiones de archivo; Nginx envía el tipo en el encabezado Content-Type
IANA: https://www.iana.org/assignments/media-types/ mantiene el registro oficial

Encabezado de respuesta HTTP Content-Type

Content-Type: application/json; charset=utf-8

Nota: charset es opcional pero recomendado para text/* y application/json; los clientes lo usan para decodificar el cuerpo correctamente
RFC: la sección 3.1.1.5 del RFC 7231 define la semántica del encabezado Content-Type
MDN: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type

Constructor Blob del navegador

const blob = new Blob([data], { type: 'application/pdf' });
const url  = URL.createObjectURL(blob);

Nota: el type se convierte en el Content-Type cuando el blob se descarga o se sube posteriormente; elige un subtipo específico para evitar application/octet-stream
MDN: https://developer.mozilla.org/en-US/docs/Web/API/Blob/Blob documenta el parámetro type

Tipos MIME comunes por categoría

Texto:       text/plain, text/html, text/css, text/javascript, text/markdown
Imagen:      image/jpeg, image/png, image/gif, image/webp, image/svg+xml
Audio:       audio/mpeg, audio/wav, audio/ogg, audio/aac
Video:       video/mp4, video/webm, video/ogg
Aplicación:  application/json, application/pdf, application/xml, application/zip

IANA categoriza estos tipos en el registro de Media Types bajo nombres de tipo de nivel superior

Preguntas frecuentes

¿Qué es un tipo MIME y por qué importa?

Un tipo MIME (Multipurpose Internet Mail Extensions, también llamado tipo de medio) es una etiqueta corta como text/html, image/png o application/json que indica al software receptor cómo interpretar un flujo de bytes. Navegadores, clientes de correo, formularios de carga y APIs lo usan para decidir si renderizar, descargar, analizar o rechazar el contenido.

¿En qué se diferencia el tipo MIME de la extensión de archivo?

La extensión es parte del nombre del archivo y es una mera convención de nomenclatura. El tipo MIME se envía por la red en la cabecera Content-Type. Suelen ser coherentes (.png ↔ image/png), pero un servidor puede servir cualquier extensión con cualquier tipo MIME, y los navegadores confían mucho más en la cabecera que en la extensión. Mantenerlas alineadas es buena higiene; basar la seguridad en la extensión es un error.

¿Qué significa application/octet-stream?

Es el tipo MIME genérico para 'datos binarios arbitrarios'. Los navegadores que lo reciben ofrecen una descarga en lugar de intentar renderizar el contenido. Los servidores recurren a él cuando no pueden identificar el formato, lo que suele significar un mapeo MIME ausente o mal configurado. Sustitúyelo por el tipo específico correcto siempre que puedas.

¿Puedo confiar en Content-Type para validar archivos subidos?

Por sí solo, no. Cualquiera puede declarar image/png al subir un ejecutable. Inspecciona siempre los bytes reales (números mágicos, cabecera PNG 89 50 4E 47, cabecera PDF %PDF-, cabecera ZIP PK), comprueba la extensión, aplica una lista de permitidos en el servidor y limita el tamaño del archivo. El MIME que aporta el navegador en las subidas es una pista, no una prueba.

¿Por qué una descarga guarda con un nombre o extensión incorrectos?

Los navegadores eligen el nombre guardado a partir de la cabecera Content-Disposition, la ruta de la URL y el tipo MIME, en ese orden. Si el servidor devuelve text/html para una descarga PDF, el navegador puede guardarla con .html. Define Content-Disposition: attachment; filename="name.pdf" y el tipo MIME application/pdf correcto para evitar sorpresas.

¿Cómo encuentro el tipo MIME adecuado para un formato raro o personalizado?

Consulta primero el registro de tipos de medios de la IANA (iana.org/assignments/media-types). Para formatos no registrados o específicos de un proveedor, la convención es application/vnd.* o application/x-* (por ejemplo, application/vnd.api+json, application/x-7z-compressed). Usa la coincidencia estándar más cercana antes de inventar uno nuevo.

¿Por qué .json y .js muestran tipos MIME distintos?

JSON son datos y usa application/json. JavaScript es código ejecutable y se sirve como text/javascript o application/javascript (la RFC 9239 hizo de text/javascript el recomendado). Confundirlos importa: una etiqueta script se negará a ejecutar application/json, y algunos servidores rechazan application/javascript cuando solo aceptan la variante text.