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

Module Apache mod_example

Langues Disponibles:  en  |  fr  |  ko 

Description:Illustration de l'API des modules Apache
Statut:Exp�rimental
Identificateur�de�Module:example_module
Fichier�Source:mod_example.c

Sommaire

Certains fichiers situ�s dans le r�pertoire modules/experimental de l'arborescence de la distribution d'Apache sont fournis � titre d'exemples pour ceux qui souhaitent �crire des modules qui utilisent l'API d'Apache.

Le fichier principal est mod_example.c, qui constitue une illustration exhaustive des diff�rents m�canismes et syntaxes d'appels. En aucun cas un module additionnel n'aura � inclure des routines pour tous les appels - il n'en n�cessitera au contraire qu'un petit nombre !

Le module example fonctionne r�ellement. Si vous le chargez dans votre serveur, activez le gestionnaire "example-handler" dans une section location, et essayez d'acc�der � la zone du site web correspondante, vous verrez s'afficher certaines sorties que le module example produit au cours des diff�rents appels.

Directives

Sujets

top

Compilation du module example

Pour inclure le module example dans votre serveur, effectuez les �tapes suivantes :

  1. Ex�cutez configure avec l'option --enable-example.
  2. Compilez le serveur (ex�cutez la commande "make").

Pour ajouter votre propre module :

  1. cp modules/experimental/mod_example.c modules/nouveau_module/mod_monexemple.c
  2. Modifiez le fichier.
  3. Cr�ez modules/nouveau_module/config.m4.
    1. Ajoutez APACHE_MODPATH_INIT(nouveau_module).
    2. Copiez la ligne APACHE_MODULE contenant "example" depuis modules/experimental/config.m4.
    3. Remplacez le premier argument "example" par monexemple.
    4. Remplacez le second argument par une br�ve description de votre module. Cette description sera utilis�e par la commande configure --help.
    5. Si la compilation de votre module n�cessite des drapeaux de compilation C, des drapeaux d'�dition de liens, ou de biblioth�ques suppl�mentaires, ajoutez les respectivement � CFLAGS, LDFLAGS et LIBS. Reportez-vous aux fichiers config.m4 des r�pertoires des autres modules pour plus d'exemples.
    6. Ajoutez APACHE_MODPATH_FINISH.
  4. Cr�ez le fichier module/nouveau_module/Makefile.in. Si la compilation de votre module ne n�cessite pas d'instructions particuli�res, ce fichier ne doit contenir que la ligne include $(top_srcdir)/build/special.mk.
  5. Ex�cutez ./buildconf � la racine du r�pertoire.
  6. Compilez le serveur apr�s avoir ex�cut� la commande configure avec l'option --enable-monexemple.
top

Utilisation du module mod_example

Pour activer le module example, ajoutez � votre fichier apache2.conf un bloc du style :

<Location /example-info>
   SetHandler example-handler
</Location>

Vous pouvez aussi ajouter ce qui suit dans un fichier .htaccess, puis acc�der au fichier "test.example" � partir du r�pertoire correspondant :

   AddHandler example-handler .example
   

Apr�s avoir recharg� la configuration ou red�marr� votre serveur, vous devriez pouvoir acc�der � ce fichier et voir s'afficher ce qui a �t� d�crit plus haut.

top

Example Directive

Description:Directive de d�monstration pour illustrer l'API des modules Apache
Syntaxe:Example
Contexte:configuration du serveur, serveur virtuel, r�pertoire, .htaccess
Statut:Exp�rimental
Module:mod_example

La directive Example n'a pour fonction que de d�finir un drapeau de d�monstration que le gestionnaire de contenu du module example va afficher. Elle ne poss�de aucun argument. Si vous naviguez vers une URL � laquelle le gestionnaire de contenu example s'applique, vous verrez s'afficher les routines du module, ainsi que l'ordre dans lequel elles ont �t� appel�es pour servir le document demand�. On peut observer l'effet de cette directive dans la phrase "Example directive declared here: YES/NO".

Langues Disponibles:  en  |  fr  |  ko 

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.