1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_example_hooks - Serveur HTTP Apache Version 2.4</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur HTTP Apache Version 2.4</p>
<img alt="" src="../images/feather.png" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_example_hooks</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_example_hooks.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_example_hooks.html" title="Français"> fr </a> |
<a href="../ko/mod/mod_example_hooks.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Illustration de l'API des modules Apache</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>example_hooks_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_example_hooks.c</td></tr></table>
<h3>Sommaire</h3>
<p>Certains fichiers situés dans le répertoire
<code>modules/examples</code> 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.</p>
<p>Le fichier principal est <code>mod_example_hooks.c</code>, 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 !</p>
<p>Le module example_hooks fonctionne réellement. Si vous le chargez dans
votre serveur, activez le gestionnaire "example-hooks-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_hooks produit au cours des différents appels.</p>
</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#compiling">Compilation du module example_hooks</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#using">Utilisation du module
<code>mod_example_hooks</code></a></li>
</ul><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#example">Example</a></li>
</ul>
<h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_example_hooks">Problèmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_example_hooks">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="compiling" id="compiling">Compilation du module example_hooks</a></h2>
<p>Pour inclure le module example_hooks dans votre serveur, effectuez les
étapes suivantes :</p>
<ol>
<li>Exécutez <code class="program"><a href="../programs/configure.html">configure</a></code> avec l'option
<code>--enable-example-hooks</code>.</li>
<li>Compilez le serveur (exécutez la commande
"<code>make</code>").</li>
</ol>
<p>Pour ajouter votre propre module :</p>
<ol class="up-A">
<li><code>cp modules/examples/mod_example_hooks.c
modules/nouveau_module/<em>mod_monexemple.c</em></code></li>
<li>Modifiez le fichier.</li>
<li>Créez <code>modules/nouveau_module/config.m4</code>.
<ol>
<li>Ajoutez <code>APACHE_MODPATH_INIT(nouveau_module)</code>.</li>
<li>Copiez la ligne APACHE_MODULE contenant "example_hooks" depuis
<code>modules/examples/config.m4</code>.</li>
<li>Remplacez le premier argument "example-hooks" par
<em>monexemple</em>.</li>
<li>Remplacez le second argument par une brève description de
votre module. Cette description sera utilisée par la commande
<code>configure --help</code>.</li>
<li>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
<code>config.m4</code> des répertoires des autres modules pour
plus d'exemples.</li>
<li>Ajoutez <code>APACHE_MODPATH_FINISH</code>.</li>
</ol>
</li>
<li>Créez le fichier
<code>module/nouveau_module/Makefile.in</code>.
Si la compilation de votre module ne nécessite pas d'instructions
particulières, ce fichier ne doit contenir que la ligne
<code>include $(top_srcdir)/build/special.mk</code>.</li>
<li>Exécutez ./buildconf à la racine du répertoire.</li>
<li>Compilez le serveur après avoir exécuté la commande configure
avec l'option --enable-monexemple.</li>
</ol>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="using" id="using">Utilisation du module
<code>mod_example_hooks</code></a></h2>
<p>Pour activer le module example_hooks, ajoutez à votre fichier
<code>httpd.conf</code> un bloc du style :</p>
<pre class="prettyprint lang-config"><Location "/example-hooks-info">
SetHandler example-hooks-handler
</Location></pre>
<p>Vous pouvez aussi ajouter ce qui suit dans un fichier <a href="core.html#accessfilename"><code>.htaccess</code></a>, puis
accéder au fichier "test.example" à partir du répertoire
correspondant :</p>
<pre class="prettyprint lang-config">AddHandler example-hooks-handler ".example"</pre>
<p>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.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="example" id="example">Directive</a> <a name="Example" id="Example">Example</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Directive de démonstration pour illustrer l'API des modules
Apache</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>Example</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel, répertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_example_hooks</td></tr>
</table>
<p>La directive <code class="directive">Example</code> n'a pour fonction que
de définir un drapeau de démonstration que le gestionnaire de
contenu du module example_hooks va afficher. Elle ne possède aucun
argument. Si vous naviguez vers une URL à laquelle le gestionnaire
de contenu example_hooks 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 "<code>Example
directive declared here: YES/NO</code>".</p>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_example_hooks.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_example_hooks.html" title="Français"> fr </a> |
<a href="../ko/mod/mod_example_hooks.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />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 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 Libera.chat, or sent to our <a href="https://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_example_hooks.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2023 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>
|