trim_types
Директива `trim_types` определяет дополнительные MIME-типы, для которых пробелы и комментарии должны удаляться из HTML-ответов.
Описание
Директива trim_types в NGINX является частью модуля ngx_http_trim_filter, который обеспечивает автоматическое удаление избыточных пробелов и комментариев из HTML-ответов. По умолчанию эта директива обрабатывает только ответы с MIME-типом text/html. Директива trim_types позволяет расширить эту функциональность, указав дополнительные MIME-типы, к которым также следует применять очистку. Это особенно полезно при отдаче динамического контента, который может использовать альтернативные типы, такие как text/xml, или другие пользовательские MIME-типы.
Чтобы использовать trim_types, необходимо указать один или несколько MIME-типов в качестве аргументов. Можно перечислять несколько типов через пробел, что инструктирует модуль применять очистку ко всем указанным MIME-типам вместе со стандартным text/html. Поведение директивы гарантирует, что содержимое внутри определённых HTML-тегов, таких как <pre>, <textarea>, <script> и <style>, остаётся неизменным, сохраняя необходимое форматирование и выполнение скриптов. Это помогает сохранять целостность ваших HTML-документов, при этом оптимизируя вывод за счёт удаления ненужных пробелов и комментариев.
Конфигурации, которым требуется динамическое управление MIME-типами, могут использовать переменные внутри директивы. В сочетании с другими директивами, такими как trim_js и trim_css, trim_types предоставляет широкий контроль над тем, как содержимое обрабатывается и доставляется пользователям, что повышает скорость загрузки страниц и общую производительность.
Пример конфига
http {
server {
location / {
trim_types text/html text/xml;
}
}
}Убедитесь, что перечислены все необходимые типы; любые пропущенные типы не будут обрезаны, что может привести к непреднамеренным пробелам в ответе.
Помните, что обрезка не применяется к тегам, таким как <pre>, <script> и <style>. Убедитесь, что такое поведение соответствует вашим потребностям.
При использовании переменных в директиве убедитесь, что переменные разрешаются в допустимые MIME types. В противном случае обрезка может работать не так, как ожидается.