trim_css

Директива `trim_css` позволяет удалять пробелы и комментарии из встроенного CSS в HTML-ответах.

Синтаксисtrim_css on | off;
По умолчаниюoff
Контекстhttp, server, location
Аргументы1

Описание

Директива trim_css в NGINX разработана специально для использования в модуле ngx_http_trim_filter, который обрабатывает HTML-ответы до их отправки клиенту. При включении с помощью trim_css on; эта директива инструктирует NGINX удалять ненужные пробелы и комментарии из встроенного CSS, обнаруженного внутри тегов <style> в содержимом HTML. Это может существенно уменьшить размер HTML-пейлоада, улучшив скорость загрузки и общую производительность веб-страниц, особенно для CSS, который мог бы содержать избыточные пробелы или комментарии.

Функциональность директивы trim_css является частью более широкой механики очистки, работающей по принципу конечного автомата. Она анализирует HTML и CSS посимвольно, определяя, когда сохранять или отбросить пробелы и комментарии в зависимости от контекста. Директива особенно полезна для оптимизации рендеринга веб-страниц и дополняет связанные директивы, управляющие очисткой JavaScript и общей очисткой HTML. Важно отметить, что директива уважает некоторые теги, содержимое которых остаётся неизменным, такие как <pre>, <textarea>, а также встроенные комментарии для Internet Explorer (IE).

В контекстах http, server или location эту директиву можно применять выборочно в зависимости от конкретных требований веб-приложения или структуры сайта.

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

location / {
    trim on;
    trim_css on;
}

Убедитесь, что trim_css установлен в правильном контексте (http, server, location), чтобы он вступил в силу.

Чрезмерное удаление пробельных символов может привести к потере важных пробелов в CSS, если это не протестировано должным образом перед развёртыванием.

Могут возникнуть конфликты, если несколько директив удаления пробелов неправильно сочетаются.

← Ко всем директивам