Встроенные модули#
В этом справочнике описаны собственные модули Angie, даны примеры конфигурации, перечислены их директивы и параметры, а также встроенные переменные.
Основной модуль#
Управление служебными файлами, процессами и другими модулями Angie. |
HTTP-модули#
Основная функциональность для обработки HTTP-запросов и ответов, управления HTTP-сервером, соединениями и статическими файлами. |
|
Контроль доступа на основе IP-адресов и диапазонов CIDR. |
|
Автоматическое получение SSL-сертификатов по протоколу ACME. |
|
Вставка заданного фрагмента до или после тела ответа. |
|
RESTful HTTP-интерфейс для получения базовой информации о веб-сервере и его статистики в формате JSON, а также управления группами проксируемых серверов. |
|
Базовая HTTP-аутентификация для контроля доступа по имени пользователя и паролю. |
|
Авторизация с помощью подзапроса к внешнему HTTP-сервису. |
|
Автоматический листинг директорий без индексного файла. |
|
Browser (устарел) |
Определение браузера на основе заголовка |
Настройка и преобразование кодировки ответа. |
|
Управление файлами на сервере по протоколу WebDAV. |
|
Отдача однопиксельного прозрачного GIF. |
|
Проксирование запроса к FastCGI-серверу. |
|
Псевдо-стриминг файлов в формате Flash Video (FLV). |
|
Преобразование IP-адресов в заданные значения переменных. |
|
Получение данных об IP-адресах на основе геолокации по базам MaxMind GeoIP. |
|
Проксирование запроса к gRPC-серверу. |
|
Распаковка сжатых GZip-ответов для их модификации и в случаях, когда клиент не поддерживает компрессию. |
|
Сжатие ответов методом GZip для экономии трафика. |
|
Отдача статических файлов, предварительно сжатых методом GZip. |
|
Изменение полей заголовка ответа. |
|
Обработка запросов по протоколу HTTP/2. |
|
Обработка запросов по протоколу HTTP/3. |
|
Преобразование изображений. |
|
Настройка индексных файлов,
обслуживающих запросы с косой чертой в конце ( |
|
Обработчики для расширения функциональности путем задания дополнительной логики на njs, подмножестве языка JavaScript. |
|
Ограничение числа одновременных запросов (активных соединений) для защиты от перегрузки. |
|
Ограничение частоты запросов для защиты от перегрузки и подбора паролей. |
|
Настройка журнала запросов для отслеживания обращений к ресурсам с целью мониторинга и анализа. |
|
Преобразование переменных на основе предопределенных пар "ключ-значение". |
|
Получение ответов от Memcached-сервера. |
|
Зеркалирование запросов на другие серверы. |
|
Псевдо-стриминг файлов в формате MP4. |
|
Обработчики для расширения функциональности путем задания дополнительной логики на языке Perl. |
|
Метрики сервера в формате, совместимом с Prometheus, для мониторинга и сбора статистики. |
|
Реверсивное проксирование запросов к другим HTTP-серверам. |
|
Случайный выбор индексного файла для запросов,
оканчивающихся косой чертой ( |
|
Определение адреса и порта клиента при работе за другим прокси-сервером. |
|
Валидация значений заголовка |
|
Модификация URI запроса, перенаправления, установка переменных и выбор конфигурации по условию. |
|
Проксирование запроса к SCGI-серверу. |
|
Создание защищенных ссылок с возможностью ограничения срока доступа. |
|
Разделение запроса на множество подзапросов к отдельным фрагментам для лучшего кэширования больших ответов. |
|
Создание переменных для A/B-тестирования, канареечных релизов, шардинга и других сценариев, требующих разделения по пропорциональным группам. |
|
Обработка команд SSI (Server Side Includes) в ответах. |
|
Настройка SSL/TLS для обработки запросов по протоколу HTTPS. |
|
Stub Status (устарел) |
Глобальные счетчики соединений и запросов в текстовом формате. |
Поиск и замена фрагментов в теле ответа. |
|
Настройка групп проксируемых серверов для балансировки нагрузки. |
|
Настройка активных проверок работоспособности для групп проксируемых серверов. |
|
Выдача и обработка cookie с уникальным идентификатором клиента для отслеживания сеансов и аналитики. |
|
Проксирование запроса к uWSGI-серверу. |
|
Преобразование XML-документов с помощью языка XSLT. |
Потоковые модули#
Основная функциональность потокового сервера для балансировки протоколов TCP и UDP на уровне L4. |
|
Контроль доступа на основе IP-адресов и диапазонов CIDR. |
|
Преобразование IP-адресов в заданные значения переменных. |
|
Получение данных об IP-адресах на основе геолокации по базам MaxMind GeoIP. |
|
Обработчики для расширения функциональности путем задания дополнительной логики на njs, подмножестве языка JavaScript. |
|
Ограничение числа одновременных соединений для защиты от перегрузки. |
|
Настройка журнала сессий для отслеживания обращений к ресурсам с целью мониторинга и анализа. |
|
Преобразование переменных на основе предопределенных пар "ключ-значение". |
|
Чтение идентификатора клиента и имени пользователя из соединения по протоколу MQTT до момента принятия решения о балансировке. |
|
Передача принятых соединений напрямую в настроенный слушающий сокет. |
|
Настройка проксирования к другим серверам. |
|
Чтение cookie из соединения по протоколу RDP до момента принятия решения о балансировке. |
|
Определение адреса и порта клиента при работе за другим прокси-сервером. |
|
Отправка в ответ клиенту при его подключении заданного значения без дальнейшего проксирования. |
|
Установка заданных значений переменных. |
|
Создание переменных для A/B-тестирования, канареечных релизов, шардинга и других сценариев, требующих разделения по пропорциональным группам. |
|
Терминация протоколов SSL/TLS и DTLS. |
|
Извлечение информации из сообщения |
|
Настройка групп проксируемых серверов для балансировки нагрузки. |
|
Настройка активных проверок работоспособности для групп проксируемых серверов. |
Почтовые модули#
Основная функциональность почтового прокси-сервера. |
|
Аутентификация пользователей и выбор сервера для последующего проксирования с помощью HTTP-запросов к внешнему серверу. |
|
Поддержка протокола IMAP. |
|
Поддержка протокола POP3. |
|
Настройка проксирования к другим серверам. |
|
Определение адреса и порта клиента при работе за другим прокси-сервером. |
|
Поддержка протокола SMTP. |
|
Поддержка протоколов SSL/TLS и StartTLS. |
Модуль Google PerfTools#
Отвечает за интеграцию с библиотекой Google Performance Tools для профилирования и анализа производительности приложений. |
Модули WASM#
Основная функциональность WASM, позволяющая запускать WASM-код в Angie. |
|
Интеграция с WebAssembly Micro Runtime. |
|
Интеграция со средой выполнения Wasmtime. |