From 59016f9ced6af11807b319f2f6c82c60f83acd7c Mon Sep 17 00:00:00 2001 From: abenmiloud Date: Mon, 6 Jun 2022 17:50:29 +0200 Subject: [PATCH] Ajouter mod_substitute --- HowtoApache.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/HowtoApache.md b/HowtoApache.md index 0d1a6aff..97e75ab0 100644 --- a/HowtoApache.md +++ b/HowtoApache.md @@ -780,6 +780,28 @@ Si l'on veux mettre en liste blanche une ip bien précise on peux le faire avec SetEnvIf Remote_Addr $IP QS_VipRequest=yes ~~~ +### mod_substitute + +1. Activer le module avec la commande `a2enmod substitute`, puis redémarrer Apache. +2. Dans le _vhost_ où on souhaite faire la substitution : + +~~~ +AddOutputFilterByType SUBSTITUTE text/html +Substitute "s/REGEXP/REMPLACEMENT/i" +~~~ + +> Le « i » à la fin de la commande de substitution permet d’ignorer la casse. + +#### Cas d’un proxy + +Si le _vhost_ qui fait la substitution fait aussi proxy entre le client et le serveur web, la substitution ne fonctionnera pas, car le corps de la réponse est compressé. Pour faire la substitution, il faut modifier la manière dont Apache traite la réponse avant de l’envoyer au client : + +~~~ +SetOutputFilter INFLATE;proxy-html;DEFLATE +AddOutputFilterByType SUBSTITUTE text/html +Substitute "s/REGEXP/REMPLACEMENT/i" +~~~ + ## Autorisations Historiquement Apache, utilisait les directives `Order`, `Allow`, `Deny`, et `Satisfy` pour définir les autorisations des ressources qu'il fournissait. Depuis la version 2.4 ces directives sont dépréciées, il ne faut donc plus les utiliser ; bien qu'elles soient toujours utilisables via le module [`mod_access_compat`](https://httpd.apache.org/docs/2.4/fr/mod/mod_access_compat.html). Ces quatres directives sont remplacées par `Require` fournies par le module [`mod_authz_host`](https://httpd.apache.org/docs/2.4/fr/mod/mod_authz_host.html) ; la migration sommaire d'un module à l'autre est décrit dans la [release note 2.4](https://httpd.apache.org/docs/2.4/fr/upgrading.html#run-time).