types
Директива 'types' в NGINX определяет MIME types на основе расширений файлов. — NGINX HTTP Core
Описание
Директива `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, чтобы избежать проблем с доставкой контента.