Serveur Apache HTTP Version 2.4
Ce document d�crit l'utilisation des gestionnaires d'Apache (handlers).
Modules Apparent�s | Directives Apparent�es |
---|---|
Un "gestionnaire" est une repr�sentation interne � Apache de l'action qui doit �tre entreprise quand un fichier est appel�. En g�n�ral, les fichiers ont des gestionnaires implicites, bas�s sur le type du fichier. Normalement, tous les fichiers sont trait�s simplement par le serveur, mais certains types de fichiers sont "g�r�s" s�par�ment.
Les gestionnaires peuvent aussi �tre configur�s explicitement, soit en fonction des extensions des noms de fichier, soit en fonction du chemin du fichier, sans faire r�f�rence au type de fichier. Ceci a le double avantage d'�tre une solution plus �l�gante, et aussi d'autoriser � associer � la fois un type et un gestionnaire avec un fichier. (Voir aussi Fichiers avec extensions multiples.)
Les gestionnaires peuvent �tre soit partie int�grante
du serveur ou inclus dans un module, soit ajout�s � l'aide de la directive
Action
. Les gestionnaires
int�gr�s dans la distribution standard se pr�sentent comme suit :
default_handler()
, qui est le gestionnaire utilis� par
d�faut pour traiter les contenus statiques. (core)mod_asis
)mod_cgi
)mod_imagemap
)mod_info
)mod_status
)mod_negotiation
)Les directives suivantes vont faire en sorte que les requ�tes pour
des fichiers poss�dant une extension html
d�clenchent
l'ex�cution du script CGI footer.pl
.
Action add-footer /cgi-bin/footer.pl AddHandler add-footer .html
� ce moment-l�, le script CGI se charge d'envoyer le document
initialement demand� (r�f�renc� par la variable d'environnement
PATH_TRANSLATED
) et d'effectuer tous ajout ou modification
voulus.
Les directives suivantes vont activer le gestionnaire
send-as-is
, qui est utilis� pour les fichiers qui poss�dent
leurs propres en-t�tes HTTP. Tous les fichiers situ�s dans le r�pertoire
/web/htdocs/asis/
seront trait�s par le gestionnaire
send-as-is
, sans tenir compte de l'extension
de leur nom de fichier.
<Directory /web/htdocs/asis> SetHandler send-as-is </Directory>
Pour impl�menter la fonctionnalit� des gestionnaires, l'
API Apache a fait l'objet d'un ajout
que vous pourriez �tre amen� � utiliser.
Plus pr�cis�ment, un nouvel enregistrement a �t� ajout� � la structure
request_rec
:
char *handler
Si vous voulez que votre module d�clenche l'utilisation d'un
gestionnaire, il vous suffit de d�finir r->handler
avec
le nom du gestionnaire � n'importe quel moment avant l'�tape
invoke_handler
de la requ�te. Les gestionnaires sont impl�ment�s comme auparavant,
quoique l'on utilise le nom du gestionnaire � la place d'un type
de contenu. Bien que ce ne soit pas obligatoire, la convention de nommage
des gestionnaires stipule l'utilisation d'un mot compos� s�par� par des
tirets, sans slashes, afin de ne pas interf�rer avec l'espace de nommage
des types de m�dia.