Сжатие статических файлов

Команда gzip создает gzipped-копии статических файлов в указанном каталоге. Это вспомогательный шаг перед раздачей ассетов через сервер, который умеет обслуживать заранее подготовленные .gz-файлы.

Команда

uv run manage.py gzip

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

По умолчанию: Без явного указания пути команда запросит каталог со статическими файлами при запуске.

Параметры

Параметр Описание
--path, -p Путь к директории со статическими файлами. Если флаг не передан, команда запросит значение интерактивно.

Дополнительные примеры запуска

Сжать текущую директорию статики сервиса

uv run manage.py gzip --path ./service54/static

Подходит, когда каталог со статическими файлами уже подготовлен и содержит раздаваемые ассеты.

Как работает

  1. Проверяет, что переданный путь существует и является директорией.
  2. Импортирует библиотеку gzip_static и вызывает gzip_static(path, force=True) для всего дерева файлов.
  3. Создает или перезаписывает сжатые версии файлов в том же каталоге и печатает итоговое сообщение с путем.
  4. Сам сервис ничего не перенастраивает: команда только готовит файлы к дальнейшей раздаче веб-сервером.

Что важно учесть

  • Если пакет gzip_static не установлен, команда завершится ошибкой на этапе импорта.
  • Команда не подходит для каталогов, где нет собранных ассетов: она не собирает статику, а лишь сжимает уже существующие файлы.
  • Флаг force=True означает, что существующие .gz-файлы могут быть перезаписаны.
  • Путь лучше указывать явно, чтобы не сжать лишние каталоги по ошибке.