types

Директива 'types' в NGINX определяет MIME types на основе расширений файлов. — NGINX HTTP Core

types
httpserverlocation
Синтаксисtypes { extension mime-type; ... };
По умолчаниюnone
Контекстhttp, server, location
МодульNGINX HTTP Core
Аргументыnone

Описание

Директива `types` в NGINX используется для определения MIME types, которые будут назначаться файлам, выдаваемым веб-сервером, на основе их расширений. Эту директиву можно указывать внутри контекстов `http`, `server` или `location`, что позволяет тонко управлять тем, как разные файлы обрабатываются в зависимости от их типа. Каждая запись в директиве `types` состоит из расширения файла, за которым следует соответствующий MIME type, что позволяет серверу точно передавать клиентам тип содержимого файлов. Когда поступает запрос к файлу, NGINX сверяет расширение запрошенного файла с определениями, указанными в директиве `types`. Если совпадение найдено, NGINX включит соответствующий заголовок `Content-Type` в ответ. Это обеспечивает корректную интерпретацию файла браузером или любым другим получающим его клиентом. Например, файл с расширением `.css` обычно будет иметь MIME type `text/css`, тогда как файл `.html` будет отдаваться с MIME type `text/html`. Важно отметить, что директива `types` может быть переопределена на уровнях контекстов `server` или `location`, что позволяет задавать специфическое поведение в разных частях конфигурации. NGINX поставляется с набором MIME types по умолчанию, указанным в файле `mime.types`, который также можно подключить с помощью инструкции `include`, что предоставляет более широкий набор часто используемых MIME types без необходимости ручного определения.

Пример конфига

types {
    text/html html;
    text/css css;
    application/javascript js;
    image/png png;
    image/jpeg jpeg jpg;
};

Убедитесь, что MIME types заданы правильно; неверные типы могут привести к некорректной обработке файлов клиентами.

MIME types, определенные в более специфичном контексте (server или location), переопределяют те, которые определены в более общем контексте (http).

Всегда проверяйте опечатки в именах расширений файлов или в определениях MIME types, чтобы избежать проблем с доставкой контента.