<-
Apache > Serveur HTTP > Documentation > Version 2.4 > Modules

Module Apache mod_sed

Langues Disponibles:  en  |  fr 

Description:Filtre les contenus en entr�e (requ�tes) et en sortie (r�ponses) en utilisant la syntaxe de sed
Statut:
Identificateur�de�Module:sed_module
Fichier�Source:mod_sed.c sed0.c sed1.c regexp.c regexp.h sed.h
Compatibilit�:Disponible depuis la version 2.3 d'Apache

Sommaire

mod_sed est un filtre de contenu "in-process". Le filtre mod_sed fournit les commandes d'�dition de sed impl�ment�es par le programme sed de Solaris 10 comme d�crit dans la page de manuel. Cependant, � la diff�rence de sed, mod_sed ne re�oit pas de donn�es sur son entr�e standard. Au lieu de cela, le filtre agit sur les donn�es �chang�es entre le client et le serveur. mod_sed peut �tre utilis� comme filtre en entr�e ou en sortie. mod_sed est un filtre de contenu, ce qui signifie qu'on ne peut pas l'utiliser pour modifier les en-t�tes http du client ou du serveur.

Le filtre en sortie mod_sed accepte un tron�on de donn�es, ex�cute le script sed sur ces donn�es, puis g�n�re une sortie qui est transmise au filtre suivant dans la cha�ne.

Le filtre en entr�e mod_sed re�oit des donn�es en provenance du filtre suivant dans la cha�ne, ex�cute les scripts sed, et renvoie les donn�es g�n�r�es au filtre appelant dans la cha�ne de filtrage.

Les filtres en entr�e ou en sortie ne traitent les donn�es que si des caract�res newline sont d�tect�s dans le contenu � filtrer. A la fin des donn�es, ce qui reste est trait� comme la derni�re ligne.

Vous trouverez sur le blog de l'auteur un article en forme de tutoriel, ainsi que les raisons pour lesquelles ce filtre est plus puissant qu'une simple recherche/remplacement de cha�ne ou d'expression rationnelle.

Directives

Sujets

top

Exemple de configuration

Ajout d'un filtre en sortie

# Dans l'exemple suivant, le filtre sed va remplacer la cha�ne
	 # "monday" par "MON" et la cha�ne "sunday" par "SUN" dans les
	 # documents html avant de les envoyer au client.
<Directory "/var/www/docs/sed"> 
    AddOutputFilter Sed html 
    OutputSed "s/monday/MON/g" 
    OutputSed "s/sunday/SUN/g" 
</Directory>

Ajout d'un filtre en entr�e

         # Dans l'exemple suivant, le filtre sed va remplacer la cha�ne
	 # "monday" par "MON" et la cha�ne "sunday" par "SUN" dans les
	 # donn�es POST envoy�es � PHP.
        <Directory "/var/www/docs/sed"> 
    AddInputFilter Sed php 
    InputSed "s/monday/MON/g" 
    InputSed "s/sunday/SUN/g" 
</Directory>
top

Commandes sed

Vous trouverez tous les d�tails � propos de la commande sed dans sa page de manuel.

b
Saut vers le label sp�cifi� (similaire � goto).
h
Copie la ligne courante dans le tampon.
H
Ajoute la ligne courante au tampon.
g
Copie le contenu du tampon dans la ligne courante.
G
Ajoute le contenu du tampon � la ligne courante.
x
Echange les contenus du tampon et de la ligne courante.
top

InputSed Directive

Description:Commande sed � ex�cuter pour le filtrage des donn�es d'une requ�te (en g�n�ral des donn�es POST)
Syntaxe:InputSed commande-sed
Contexte:r�pertoire, .htaccess
Statut:
Module:mod_sed

La directive InputSed permet de sp�cifier la commande sed � ex�cuter pour le filtrage des donn�es (en g�n�ral des donn�es POST) d'une requ�te.

top

OutputSed Directive

Description:Commande sed pour le filtrage des contenus de type r�ponse
Syntaxe:OutputSed commande-sed
Contexte:r�pertoire, .htaccess
Statut:
Module:mod_sed

La directive OutputSed permet de sp�cifier la commande sed � ex�cuter dans le cadre du traitement d'une r�ponse.

Langues Disponibles:  en  |  fr 

top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.