Qual é o tipo MIME dos arquivos .csv?
O tipo MIME (media type) dos arquivos valores separados por vírgula com a extensão .csv é text/csv. Adicione ; charset=utf-8 e, para o Excel, um BOM UTF-8 no início do arquivo para que os caracteres acentuados sejam exibidos corretamente. Use Content-Disposition: attachment; filename="data.csv" para forçar o download.
Cabeçalho Content-Type
Content-Type: text/csv; charset=utf-8
Tipos baseados em texto devem incluir um charset para que o navegador decodifique os caracteres corretamente.
Configuração do servidor
| Servidor | Configuração |
|---|---|
Nginx (mime.types ou types {}) | text/csv csv; |
Apache (.htaccess) | AddType text/csv .csv |
IIS (web.config) | <mimeMap fileExtension=".csv" mimeType="text/csv" /> |
| Node.js / Express | res.type('csv') ou res.setHeader('Content-Type', 'text/csv; charset=utf-8') |
| Amazon S3 | Defina Content-Type: text/csv no objeto (metadados) ou passe --content-type text/csv para aws s3 cp |
Os arquivos .csv devem ser comprimidos?
Sim. Valores separados por vírgula é texto, então ativar gzip ou Brotli para text/csv normalmente reduz entre 50–80% do tamanho transferido. Garanta que a lista de compressão do seu servidor inclua esse tipo — verifique com o teste de compressão de sites.
Por que o tipo MIME importa
Os navegadores decidem o que fazer com uma resposta — renderizar, executar, reproduzir ou baixar — a partir do cabeçalho Content-Type, e não da extensão do arquivo. Com X-Content-Type-Options: nosniff, um tipo errado faz com que folhas de estilo e scripts sejam bloqueados. Em uploads, nunca confie no tipo enviado pelo cliente; verifique o conteúdo do arquivo (seus magic bytes) no servidor.
Consulta de tipos MIME
Pesquise todas as extensões de arquivo e tipos MIME comuns, com cabeçalhos Content-Type prontos para copiar.
Perguntas frequentes
Qual é o tipo MIME do .csv?
text/csv.Como definir o Content-Type para .csv no Nginx?
text/csv csv; está listado no bloco types (geralmente em /etc/nginx/mime.types) e recarregue o Nginx.