.xlsx MIME-тип: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Файлы с расширением .xlsx (Microsoft Excel) используют MIME-тип application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.

Обновлено

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
MIME-тип для .xlsx
Документы
Категория
Нет
Сжатие gzip/Brotli

Какой MIME-тип у файлов .xlsx?

MIME-тип (тип медиаданных) для файлов Microsoft Excel с расширением .xlsx — application/vnd.openxmlformats-officedocument.spreadsheetml.sheet. Это ZIP-архив с XML-файлами, он уже сжат. Отдавайте файлы именно с этим типом, чтобы браузер сохранял расширение .xlsx при скачивании.

Заголовок Content-Type

Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=utf-8

Текстовые типы должны включать charset, чтобы браузер корректно декодировал символы.

Настройка сервера

СерверНастройка
Nginx (mime.types или types {})application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx;
Apache (.htaccess)AddType application/vnd.openxmlformats-officedocument.spreadsheetml.sheet .xlsx
IIS (web.config)<mimeMap fileExtension=".xlsx" mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
Node.js / Expressres.type('xlsx') или res.setHeader('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=utf-8')
Amazon S3Установите Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet для объекта (метаданные) или передайте --content-type application/vnd.openxmlformats-officedocument.spreadsheetml.sheet в aws s3 cp

Нужно ли сжимать файлы .xlsx?

Нет. Файлы Microsoft Excel уже сжаты внутри, поэтому gzip или Brotli лишь расходуют процессорное время и почти не уменьшают размер, а иногда даже увеличивают его. Не включайте application/vnd.openxmlformats-officedocument.spreadsheetml.sheet в настройки сжатия.

Зачем нужен MIME-тип

Браузеры решают, что делать с ответом (отобразить, выполнить, воспроизвести или скачать), по заголовку Content-Type, а не по расширению файла. При X-Content-Type-Options: nosniff неверный тип приводит к тому, что таблицы стилей и скрипты полностью блокируются. Для загрузки файлов никогда не доверяйте типу, который отправил клиент; проверяйте содержимое файла (его сигнатуру, magic bytes) на сервере.

Часто задаваемые вопросы

Какой MIME-тип у .xlsx?
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.
Как задать Content-Type для .xlsx в Nginx?
Убедитесь, что строка application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx; есть в блоке types (обычно в файле /etc/nginx/mime.types), и перезагрузите Nginx.
Нужно ли сжимать файлы .xlsx через gzip?
Нет: формат уже сжат, поэтому HTTP-сжатие не даёт выигрыша.