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).