Spec-Zone.ru › Apache HTTP Server

Модуль Apache mod_proxy_express

Описание: Расширение для динамического массового обратного проксирования для mod_proxy
Статус: Расширение
Идентификатор модуля: proxy_express_module
Исходный файл: mod_proxy_express.c
Совместимость: Доступен в Apache 2.3.13 и более поздних версиях

Краткое описание

Этот модуль динамически настраивает массовые обратные прокси-серверы, сопоставляя заголовок Host: HTTP-запроса с именем сервера и URL серверной части, хранящимися в файле DBM. Это позволяет легко использовать большое количество обратных прокси-серверов без изменения конфигурации. По функциональности он значительно уступает mod_proxy_balancer, который также поддерживает динамическое масштабирование, но предназначен для работы с гораздо большим количеством серверных частей. Он идеально подходит для использования в качестве входного HTTP-коммутатора и в архитектурах микросервисов.

Для работы этого модуля требуется служба mod_proxy.

Предупреждение

Не включайте проксирование, пока не защитите свой сервер. Открытые прокси-серверы опасны как для вашей сети, так и для Интернета в целом.

Ограничения

  • Этот модуль не предназначен для замены динамических возможностей mod_proxy_balancer. Вместо этого он задуман как преимущественно лёгкая и быстрая альтернатива использованию mod_rewrite с RewriteMap и флагом [P] для сопоставления при обратном проксировании.
  • Он не поддерживает регулярные выражения или сопоставление с шаблонами.
  • Он эмулирует:
    <VirtualHost *:80>
       ServerName front.end.server
       ProxyPass        "/" "back.end.server:port"
       ProxyPassReverse "/" "back.end.server:port"
    </VirtualHost>
    То есть весь URL добавляется к сопоставленному URL серверной части. Это соответствует замыслу создать простой, но быстрый коммутатор обратного прокси-сервера.

Директива ProxyExpressDBMFile

Описание: Путь к файлу DBM.
Синтаксис:
ProxyExpressDBMFile pathname
Контекст: конфигурация сервера, виртуальный хост
Статус: Расширение
Модуль: mod_proxy_express

Директива ProxyExpressDBMFile указывает расположение файла DBM с картой Express. Этот файл используется для сопоставления имени входящего сервера, полученного из заголовка Host:, с URL серверной части.

Примечание

Файл создаётся из текстового файла в обычном формате с помощью утилиты httxt2dbm.

Файл карты ProxyExpress

##
##express-map.txt:
##

www1.example.com http://192.168.211.2:8080
www2.example.com http://192.168.211.12:8088
www3.example.com http://192.168.212.10

Создание файла DBM

httxt2dbm -i express-map.txt -o emap

Конфигурация

ProxyExpressEnable on
ProxyExpressDBMFile emap

Директива ProxyExpressDBMType

Описание: Тип файла DBM.
Синтаксис:
ProxyExpressDBMType type
По умолчанию:
ProxyExpressDBMType default
Контекст: конфигурация сервера, виртуальный хост
Статус: Расширение
Модуль: mod_proxy_express

Директива ProxyExpressDBMType задаёт ожидаемый модулем тип DBM. По умолчанию используется тип DBM, заданный по умолчанию для утилиты httxt2dbm.

Возможные значения (во время выполнения могут быть доступны не все):

Значение Описание
db Файлы Berkeley DB
gdbm Файлы GDBM
ndbm Файлы NDBM
sdbm Файлы SDBM (доступны всегда)
default тип DBM по умолчанию

Директива ProxyExpressEnable

Описание: Включает функциональность модуля.
Синтаксис:
ProxyExpressEnable on|off
По умолчанию:
ProxyExpressEnable off
Контекст: конфигурация сервера, виртуальный хост
Статус: Расширение
Модуль: mod_proxy_express

Директива ProxyExpressEnable определяет, будет ли модуль активен.

© 2018 The Apache Software Foundation
Licensed under the Apache License, Version 2.0.
https://httpd.apache.org/docs/2.4/en/mod/mod_proxy_express.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API