¿Cuál es el tipo MIME de los archivos .ico?
El tipo MIME (media type) de los archivos Icon file con la extensión .ico es image/vnd.microsoft.icon. También puedes ver image/x-icon. Es el formato clásico de favicon. Los navegadores también aceptan image/x-icon, que muchos servidores envían.
Cabecera Content-Type
Content-Type: image/vnd.microsoft.icon
Configuración del servidor
| Servidor | Configuración |
|---|---|
Nginx (mime.types o types {}) | image/vnd.microsoft.icon ico; |
Apache (.htaccess) | AddType image/vnd.microsoft.icon .ico |
IIS (web.config) | <mimeMap fileExtension=".ico" mimeType="image/vnd.microsoft.icon" /> |
| Node.js / Express | res.type('ico') o res.setHeader('Content-Type', 'image/vnd.microsoft.icon') |
| Amazon S3 | Establece Content-Type: image/vnd.microsoft.icon en el objeto (metadatos), o pasa --content-type image/vnd.microsoft.icon a aws s3 cp |
¿Conviene comprimir los archivos .ico?
Sí. Icon file son datos sin comprimir, así que activar gzip o Brotli para image/vnd.microsoft.icon suele reducir el tamaño de transferencia entre un 50 y un 80 %. Asegúrate de que la lista de compresión de tu servidor incluya este tipo; compruébalo con el test de compresión web.
Por qué importa el tipo MIME
Los navegadores deciden qué hacer con una respuesta (mostrarla, ejecutarla, reproducirla o descargarla) según la cabecera Content-Type, no según la extensión del archivo. Con X-Content-Type-Options: nosniff, un tipo incorrecto hace que las hojas de estilo y los scripts se bloqueen directamente. En las subidas de archivos, nunca confíes en el tipo que envía el cliente; comprueba el contenido del archivo (sus magic bytes) en el servidor.
Búsqueda de tipos MIME
Busca todas las extensiones de archivo y tipos MIME habituales, con cabeceras Content-Type listas para copiar.
Preguntas frecuentes
¿Cuál es el tipo MIME de .ico?
image/vnd.microsoft.icon. Otras alternativas que se ven en la práctica: image/x-icon.¿Cómo configuro el Content-Type de .ico en Nginx?
image/vnd.microsoft.icon ico; figure en el bloque types (normalmente en /etc/nginx/mime.types) y recarga Nginx.