Busca de Tipo MIME
Pesquise tipos MIME por extensão de arquivo
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.
O Lookup de Tipo MIME fornece busca bidirecional entre extensões de arquivo e tipos MIME (também chamados tipos de mídia ou tipos de conteúdo), ajudando você a encontrar o cabeçalho Content-Type correto para qualquer formato de arquivo ou identificar quais extensões mapeiam para um determinado tipo MIME. Digite .woff2 para aprender que o tipo correto é font/woff2, ou procure application/json para ver todas as extensões associadas como .json, .map e .geojson.
Entendendo Tipos MIME
Tipos MIME -- originalmente "Multipurpose Internet Mail Extensions", mas agora usados muito além de email -- são a forma padrão de identificar formatos de arquivo na web. Quando um servidor web envia um arquivo para seu navegador, ele inclui um cabeçalho Content-Type contendo o tipo MIME, e o navegador usa esse tipo para decidir como lidar com a resposta. Um arquivo HTML é renderizado como uma página, um PNG é exibido como uma imagem, um PDF abre no visualizador e um ZIP é oferecido como um download. Sem o tipo MIME correto, o navegador tem que adivinhar, e adivinhar geralmente dá errado.
A razão pela qual tipos MIME importam mais que extensões de arquivo é que respostas HTTP não carregam nomes de arquivo. Quando seu navegador solicita https://example.com/api/data, não há extensão .json para dar uma dica sobre o formato -- o navegador depende inteiramente do cabeçalho Content-Type: application/json para saber que está recebendo JSON. Se o servidor enviar text/plain em vez disso, o navegador exibirá o texto bruto em vez de analisá-lo como dados estruturados. E com o cabeçalho de segurança X-Content-Type-Options: nosniff (que todos os aplicativos modernos devem definir), o navegador estritamente força tipos MIME declarados e não tentará adivinhar pelo conteúdo.
Para desenvolvedores web, os problemas de tipo MIME mais comuns surgem de má configuração do servidor. Um novo formato de fonte como .woff2 é servido como application/octet-stream porque o servidor não tem um mapeamento para essa extensão, fazendo o navegador baixá-lo em vez de usá-lo como uma fonte. Um arquivo JavaScript é servido como text/plain e é bloqueado pela verificação MIME do navegador. Um arquivo SVG é servido sem o sufixo +xml e falha ao renderizar. Esta ferramenta de lookup ajuda você a encontrar o tipo correto rapidamente para que você possa atualizar sua configuração de servidor com confiança.
Como Procurar um Tipo MIME
- Digite uma extensão de arquivo (por exemplo,
.json,.webp,.woff2) ou um tipo MIME (por exemplo,application/pdf,image/svg+xml). - Visualize o resultado correspondente com o tipo MIME primário, tipos alternativos e notas de suporte do navegador.
- Copie o valor
Content-Typecorreto para uso em configuração de servidor ou cabeçalhos HTTP.
Exemplos de Lookup de Tipo MIME
Procura por Extensão de Arquivo
| Extensão | Tipo MIME Primário | Alternativas / Notas |
|---|---|---|
.html | text/html | -- |
.css | text/css | -- |
.js | application/javascript | Legado: text/javascript (ainda amplamente usado) |
.json | application/json | -- |
.xml | application/xml | Também: text/xml |
.svg | image/svg+xml | -- |
.png | image/png | -- |
.jpg / .jpeg | image/jpeg | -- |
.webp | image/webp | -- |
.avif | image/avif | Formato moderno, verifique suporte do navegador |
.gif | image/gif | -- |
.pdf | application/pdf | -- |
.woff2 | font/woff2 | -- |
.woff | font/woff | Legado: application/font-woff |
.mp4 | video/mp4 | -- |
.webm | video/webm | -- |
.zip | application/zip | -- |
.gz | application/gzip | -- |
.csv | text/csv | -- |
.md | text/markdown | Não universalmente reconhecido por servidores |
Procura por Tipo MIME
| Tipo MIME | Extensões Associadas |
|---|---|
application/octet-stream | .bin, .exe, .dll, .iso e qualquer binário desconhecido |
text/plain | .txt, .log, .ini, .cfg |
application/json | .json, .map, .topojson, .geojson |
image/jpeg | .jpg, .jpeg, .jfif |
application/xml | .xml, .xsl, .xsd, .rng |
Quando Usar Lookup de Tipo MIME
- Configuração de tipos de conteúdo do servidor web -- Defina o
Content-Typecorreto para arquivos estáticos servidos pelo nginx, Apache ou IIS para evitar problemas de download-em-vez-de-exibir. - Definição de cabeçalhos de download -- Use o tipo MIME correto nos cabeçalhos
Content-TypeeContent-Dispositionpara downloads de arquivo. - Validação de upload de arquivo -- Verifique arquivos enviados contra tipos MIME esperados para rejeitar formatos não suportados.
- Depuração de erros "arquivo não reconhecido" -- Identifique quando um servidor envia o tipo MIME errado, causando manuseio incorreto do navegador do arquivo.
- Configuração de cache CDN -- Defina tipos MIME corretos para que CDNs apliquem regras de cache e compressão apropriadas.
- Manuseio de anexo de email -- Use o tipo correto ao construir mensagens MIME multipart para anexos de email.
Como Funcionam os Tipos MIME
Estrutura de Tipo MIME
Um tipo MIME segue o formato type/subtype, opcionalmente com parâmetros:
type/subtype; parameter=value
O type é a categoria geral (text, image, audio, video, application, font, multipart). O subtype é o formato específico. Por exemplo, image/png é uma imagem em formato PNG.
Parâmetros Comuns
charset-- Codificação de caracteres para tipos de texto:text/html; charset=utf-8boundary-- Separador para tipos multipart:multipart/form-data; boundary=----FormBoundaryname-- Sugestão de nome de arquivo original em alguns contextos
Por Que Tipos MIME Corretos Importam
Navegadores usam tipos MIME, não extensões de arquivo, para decidir como lidar com uma resposta:
- Tipo MIME incorreto para CSS -- Se um servidor enviar
text/plainpara um arquivo.css, o navegador recusará aplicar os estilos e registrará um erro de incompatibilidade de tipo MIME. - Tipo MIME incorreto para JavaScript -- Servir arquivos
.jscomotext/plaincausa o navegador rejeitar o script no modo de verificação MIME estrita. - Segurança:
X-Content-Type-Options: nosniff-- Quando este cabeçalho é definido, o navegador estritamente força tipos MIME e não tentará "farejar" o conteúdo para adivinhar o tipo, tornando a configuração correta essencial.
application/octet-stream como Padrão
Quando um servidor não conhece o tipo de arquivo, usa application/octet-stream como um tipo binário genérico. Isso diz ao navegador para baixar o arquivo em vez de tentar exibi-lo. Configurar tipos MIME específicos para extensões conhecidas evita esse comportamento de fallback.
Tipos MIME Fornecedor e Pessoal
Tipos MIME usam convenções de nomenclatura para indicar seu status de registro:
| Prefixo | Significado | Exemplo |
|---|---|---|
| (nenhum) | Tipo registrado padrão | application/json |
vnd. | Tipo específico do fornecedor | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (.xlsx) |
x- | Experimental não registrado (deprecado) | application/x-www-form-urlencoded |
prs. | Pessoal/experimental | text/prs.lines.tag |
Dicas Práticas para Configuração de Tipo MIME
O erro de configuração de tipo MIME mais comum é não configurá-los. A maioria dos servidores web vem com um conjunto padrão de mapeamentos, mas geralmente ficam atrás de formatos de arquivo modernos. Se você está servindo fontes .woff2, imagens .webp ou .avif, ou arquivos .mjs ES module, verifique se seu servidor tem os mapeamentos corretos. No nginx, esses mapeamentos vivem no arquivo mime.types. No Apache, estão em mime.types ou configurados via diretivas AddType. Um mapeamento faltante significa que o servidor faz fallback para application/octet-stream, que dispara um prompt de download em vez de renderização inline.
Ao construir APIs, sempre defina o cabeçalho Content-Type explicitamente em sua resposta em vez de confiar em padrões do framework. Se sua API retorna JSON, defina Content-Type: application/json; charset=utf-8. Se retorna XML, use application/xml. Para APIs que podem retornar múltiplos formatos baseados no cabeçalho Accept (negociação de conteúdo), certifique-se de que cada formato tenha o tipo MIME correto. Uma incompatibilidade entre o tipo declarado e o formato do corpo é uma causa comum de erros de análise no lado do cliente.
Para validação de upload de arquivo, nunca confie apenas no tipo MIME enviado pelo cliente. O Content-Type em um upload multipart é definido pelo navegador com base na extensão do arquivo e pode ser facilmente falsificado. Um usuário malicioso pode fazer upload de um arquivo executável com extensão .jpg e o navegador enviará image/jpeg como o tipo. Sempre valide o conteúdo real do arquivo (magic bytes) no lado do servidor além de verificar o tipo MIME declarado.
Perguntas Frequentes
Qual é o tipo MIME correto para JavaScript: application/javascript ou text/javascript?
application/javascript é o tipo registrado padrão (RFC 4329). Porém, text/javascript está listado como o único tipo MIME JavaScript na especificação HTML e todos os navegadores o suportam. Na prática, ambos funcionam. Se você estiver configurando um novo servidor, qualquer um é aceitável, embora text/javascript tenha compatibilidade com legado mais ampla.
Devo usar image/svg+xml ou image/svg para arquivos SVG?
Sempre use image/svg+xml. O sufixo +xml indica que SVG é um formato baseado em XML. image/svg não é um tipo MIME registrado e pode não ser reconhecido por navegadores ou validadores.
Qual tipo MIME devo usar para respostas de API JSON?
Use application/json. Este é o tipo MIME padrão definido no RFC 8259. Algumas APIs também usam application/vnd.api+json para formato JSON:API ou application/problem+json para respostas de erro RFC 7807.
Qual é a diferença entre text/xml e application/xml?
Ambos são válidos para conteúdo XML, mas application/xml é recomendado para uso geral. O tipo text/xml implica que o conteúdo é texto legível por humanos, e especificações mais antigas dizem que deve fazer fallback para codificação US-ASCII se nenhum charset for especificado. application/xml faz fallback para UTF-8, que é quase sempre o que você quer.
Como determino o tipo MIME de um arquivo desconhecido?
Em Linux e macOS, o comando file pode detectar o tipo pelo conteúdo do arquivo (magic bytes): file --mime-type unknown.bin. Isso é mais confiável que confiar na extensão. Na web, o navegador envia o tipo MIME com base na extensão, que pode não corresponder ao conteúdo real.
Por que meu arquivo de fonte baixa em vez de carregar no navegador?
Seu servidor provavelmente está enviando a fonte com application/octet-stream porque não tem um mapeamento para a extensão da fonte. Adicione o mapeamento de tipo MIME correto: font/woff2 para .woff2, font/woff para .woff, font/ttf para .ttf e font/otf para .otf. Após adicionar o mapeamento, o navegador carregará a fonte inline em vez de solicitar um download.
Ferramentas Relacionadas
- Formatador de Cabeçalho HTTP - Formatar Content-Type e outros cabeçalhos HTTP
- Lookup de Código de Status HTTP - Procure códigos de status retornados junto com cabeçalhos de tipo MIME
- Explicador de Cabeçalho CORS - Entenda regras CORS para diferentes tipos de conteúdo
- Construtor de Comando curl - Construa comandos curl com cabeçalhos Content-Type corretos
- Analisador de User-Agent - Analise strings User-Agent para verificar suporte de tipo MIME do navegador