mod_proxy_express Extension à mod_proxy pour le mandatement dynamique inverse de masse Extension mod_proxy_express.c proxy_express_module Disponible à partir de la version 2.3.13 du serveur HTTP Apache

Ce module crée dynamiquement en masse des mandataires inverses en faisant correspondre l'en-tête Host: de la requête HTTP à un nom de serveur et une URL d'arrière-plan stockés dans un fichier DBM. Il est ainsi plus aisé d'utiliser un grand nombre de mandataires inverses sans avoir à modifier la configuration. Il est loin de posséder autant de fonctionnalités que mod_proxy_balancer qui propose aussi la croissance dynamique, mais il est conçu pour gérer un nombre beaucoup plus important de serveurs d'arrière-plan. Il convient parfaitement pour créer un commutateur HTTP frontal et pour les architectures Microservices.

Pour pouvoir être utilisé, ce module nécessite le chargement de mod_proxy.

Avertissement

N'activez le mandatement que si vous avez sécurisé votre serveur. Les serveurs mandataires ouverts sont dangereux pour votre réseau, et dans une plus large mesure pour Internet.

Limitations
  • Ce module n'est pas conçu pour remplacer les fonctionnalités dynamiques de mod_proxy_balancer. Par contre, il peut constituer une alternative légère et rapide à mod_rewrite lorsque ce dernier utilise la directive RewriteMap et le drapeau [P] pour le mandatement inverse à partir d'une table de correspondances.
  • Il ne supporte pas les mises en correspondance basées sur les expressions rationnelles ou les modèles.
  • Il émule : <VirtualHost *:80> ServerName front.end.server ProxyPass "/" "back.end.server:port" ProxyPassReverse "/" "back.end.server:port" </VirtualHost> En d'autres termes, l'URL dans son ensemble est ajoutée à l'URL d'arrière-plan correspondante, tout ceci dans le but de proposer un commutateur mandataire inverse simple mais rapide.
mod_proxy BalancerMember BalancerGrowth BalancerPersist BalancerInherit ProxyExpressEnable Active la fonctionnalité du module. ProxyExpressEnable on|off ProxyExpressEnable off server configvirtual host FileInfo

La directive ProxyExpressEnable permet d'activer/désactiver le module.

ProxyExpressDBMFile Chemin du fichier DBM. ProxyExpressDBMFile pathname server configvirtual host FileInfo

La directive ProxyExpressDBMFile permet de définir le chemin du fichier DBM de correspondance Express. Ce fichier permet de faire correspondre le nom de serveur extrait de l'en-tête Host: de la requête entrante avec une URL d'arrière-plan.

Note

Ce fichier est élaboré à partir d'un fichier texte à l'aide de l'utilitaire httxt2dbm.

Fichier de correspondances 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
Création du fichier DBM httxt2dbm -i express-map.txt -o emap
Configuration ProxyExpressEnable on ProxyExpressDBMFile emap
ProxyExpressDBMType Type de fichier DBM. ProxyExpressDBMType type ProxyExpressDBMType default server configvirtual host FileInfo

La directive ProxyExpressDBMType permet de définir le type de fichier DBM requis par le module. La valeur par défaut correspond au type DBM par défaut du fichier créé par l'utilitaire httxt2dbm.

Les valeurs possibles sont (mais toutes ne seront pas disponibles à l'exécution) :

ValueDescription
dbFichiers Berkeley DB
gdbmFichiers GDBM
ndbmFichiers NDBM
sdbmFichiers SDBM (toujours disponible)
defaulttype DBM par défaut