Какой MIME-тип у файлов .zip?
MIME-тип (тип медиаданных) для ZIP-архивов с расширением .zip — application/zip. Также можно встретить application/x-zip-compressed. Формат уже сжат. Windows иногда передаёт application/x-zip-compressed при загрузке — принимайте оба варианта.
Заголовок Content-Type
Content-Type: application/zip
Настройка сервера
| Сервер | Настройка |
|---|---|
Nginx (mime.types или types {}) | application/zip zip; |
Apache (.htaccess) | AddType application/zip .zip |
IIS (web.config) | <mimeMap fileExtension=".zip" mimeType="application/zip" /> |
| Node.js / Express | res.type('zip') или res.setHeader('Content-Type', 'application/zip') |
| Amazon S3 | Задайте Content-Type: application/zip для объекта (метаданные) или передайте --content-type application/zip в aws s3 cp |
Нужно ли сжимать файлы .zip?
Нет. ZIP-архивы уже сжаты внутри, поэтому gzip или Brotli только зря нагрузят процессор и почти не уменьшат размер, а иногда даже увеличат его. Не включайте application/zip в настройки сжатия.
Зачем нужен MIME-тип
Браузер решает, что делать с ответом — отобразить, выполнить, воспроизвести или скачать — по заголовку Content-Type, а не по расширению файла. При X-Content-Type-Options: nosniff неверный тип приводит к тому, что таблицы стилей и скрипты полностью блокируются. При загрузке файлов никогда не доверяйте типу, переданному клиентом; проверяйте содержимое файла (его магические байты) на сервере.
Поиск MIME-типов
Поиск по всем распространённым расширениям файлов и MIME-типам с готовыми заголовками Content-Type для копирования.
Часто задаваемые вопросы
Какой MIME-тип у .zip?
application/zip. Встречающиеся альтернативы: application/x-zip-compressed.Как задать Content-Type для .zip в Nginx?
application/zip zip; указан в блоке types (обычно в /etc/nginx/mime.types), и перезагрузите Nginx.