]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_so.html.fr
xforms.
[apache] / docs / manual / mod / mod_so.html.fr
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
4         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5               This file is generated from xml source: DO NOT EDIT
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7       -->
8 <title>mod_so - Serveur Apache HTTP</title>
9 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <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" />
12 <script src="../style/scripts/prettify.js" type="text/javascript">
13 </script>
14
15 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
16 <body>
17 <div id="page-header">
18 <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>
19 <p class="apache">Serveur Apache HTTP Version 2.5</p>
20 <img alt="" src="../images/feather.gif" /></div>
21 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
22 <div id="path">
23 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Modules</a></div>
24 <div id="page-content">
25 <div id="preamble"><h1>Module Apache mod_so</h1>
26 <div class="toplang">
27 <p><span>Langues Disponibles: </span><a href="../en/mod/mod_so.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
28 <a href="../fr/mod/mod_so.html" title="Français">&nbsp;fr&nbsp;</a> |
29 <a href="../ja/mod/mod_so.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
30 <a href="../ko/mod/mod_so.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
31 <a href="../tr/mod/mod_so.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
32 </div>
33 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Chargement de modules ou de code exécutable au cours du
34 démarrage ou du redémarrage du serveur</td></tr>
35 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
36 <tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>so_module</td></tr>
37 <tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_so.c</td></tr>
38 <tr><th><a href="module-dict.html#Compatibility">Compatibilité:</a></th><td>Sous Windows, c'est un module de base (toujours
39 inclus)</td></tr></table>
40 <h3>Sommaire</h3>
41
42
43     <p>Sur les systèmes d'exploitation sélectionnés, ce module peut être
44     utilisé pour charger des modules dans le serveur HTTP Apache en cours d'exécution
45     grâce au mécanisme des <a href="../dso.html">Dynamic Shared Object ou Objets Partagés
46     Dynamiquement</a> (DSO), et évite ainsi de devoir effectuer une
47     recompilation.</p>
48
49     <p>Sous Unix, le code chargé provient en général de fichiers objet
50     partagés possèdant en général l'extension <code>.so</code>, alors
51     que sous Windows, l'extension peut être soit <code>.so</code>, soit
52     <code>.dll</code>.</p>
53
54     <div class="warning"><h3>Avertissement</h3>
55     <p>En général, les modules compilés pour une version majeure du
56     serveur HTTP Apache ne fonctionneront pas avec une autre (par
57     exemple de 1.3 à 2.0 ou 2.0 à 2.2). D'une version majeure à l'autre,
58     il y a souvent des modifications d'API qui nécessitent des
59     modifications du module pour qu'il puisse fonctionner avec la
60     nouvelle version.</p>
61     </div>
62 </div>
63 <div id="quickview"><h3 class="directives">Directives</h3>
64 <ul id="toc">
65 <li><img alt="" src="../images/down.gif" /> <a href="#loadfile">LoadFile</a></li>
66 <li><img alt="" src="../images/down.gif" /> <a href="#loadmodule">LoadModule</a></li>
67 </ul>
68 <h3>Sujets</h3>
69 <ul id="topics">
70 <li><img alt="" src="../images/down.gif" /> <a href="#windows">Création de modules chargeables pour
71 Windows</a></li>
72 </ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
73 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
74 <div class="section">
75 <h2><a name="windows" id="windows">Création de modules chargeables pour
76 Windows</a></h2>
77
78     <div class="note"><h3>Note</h3>
79     <p>Sous Windows, où les modules chargeables possèdent en général
80     l'extension de nom de fichier <code>.dll</code>, les modules Apache
81     httpd se nomment <code>mod_nom-module.so</code>, tout comme sur les
82     autres plates-formes. Vous trouverez cependant encore des modules
83     tiers, comme PHP par exemple, qui continuent d'utiliser la
84     convention de nommage avec extension <code>.dll</code>.</p>
85
86     <p>Bien que <code>mod_so</code> puisse encore charger des modules
87     possèdant un nom du style <code>ApacheModuleFoo.dll</code>,
88     il est préférable d'utiliser la
89     nouvelle convention de nommage ; si vous modifiez votre module
90     chargeable pour la version 2.0, veuillez aussi modifier son nom pour
91     respecter cette nouvelle convention.</p></div>
92
93     <p>Les API des modules Apache httpd sous Unix et Windows sont identiques.
94     Alors que certains modules s'appuient sur certains
95     aspects de l'architecture Unix non présents dans Windows, et ne
96     fonctionneront donc pas sur cette dernière plate-forme, de nombreux
97     modules fonctionnent sous Windows avec peu ou pas de modification
98     par rapport à leur version Unix.</p>
99
100     <p>Lorsqu'un module fonctionne, il peut être ajouté au serveur de
101     deux manières. Sous Unix, il peut être compilé dans le serveur.
102     Comme Apache httpd pour Windows ne dispose pas du programme
103     <code>Configure</code> propre à Apache httpd pour Unix, le fichier source
104     du module doit être ajouté au fichier projet Apache de base, et ses
105     symboles ajoutés au fichier <code>os\win32\modules.c</code>.</p>
106
107     <p>La seconde méthode consiste à compiler le module en tant que DLL,
108     à savoir une bibliothèque partagée qui pourra être chargée dans le
109     serveur en cours d'exécution via la directive
110     <code><code class="directive">LoadModule</code></code>. Ces modules DLL
111     peuvent être distribués et exécutés sur toute installation d'Apache
112     httpd pour Windows, sans avoir à recompiler le serveur.</p>
113
114     <p>Pour créer un module DLL, il est nécessaire d'apporter une légère
115     modification à son fichier source : l'enregistrement du module doit
116     être exporté depuis la DLL (qui sera elle-même créée plus tard ;
117     voir plus loin). Pour ce faire, ajoutez la macro
118     <code>AP_MODULE_DECLARE_DATA</code> (définie dans les fichiers
119     d'en-têtes d'Apache httpd) à la définition de l'enregistrement de votre
120     module. Par exemple, si votre module est déclaré comme suit :</p>
121
122 <div class="example"><p><code>
123     module foo_module;
124 </code></p></div>
125
126     <p>Remplacez cette ligne par :</p>
127 <div class="example"><p><code>
128     module AP_MODULE_DECLARE_DATA foo_module;
129 </code></p></div>
130
131     <p>Notez que cette macro ne sera prise en compte que sous Windows,
132     si bien que le module poura être utilisé sans changement sous Unix,
133     si besoin est. Alternativement, si vous êtes familier avec les
134     fichiers <code>.DEF</code>, vous pouvez les utiliser pour exporter
135     l'enregistrement du module.</p>
136
137     <p>Maintenant, nous sommes prêts à créer une DLL contenant notre
138     module. Il va falloir pour cela la lier avec la bibliothèque
139     d'export libhttpd.lib qui a été créée au cours de la compilation de
140     la bibliothèque partagée libhttpd.dll. Il sera peut-être aussi
141     nécessaire de modifier la configuration du compilateur pour
142     s'assurer que les fichiers d'en-têtes d'Apache httpd seront correctement
143     localisés. Vous trouverez cette bibliothèque à la racine du
144     répertoire des modules de votre serveur. Il est souhaitable
145     d'utiliser un fichier de module .dsp existant dans l'arborescence
146     afin de s'assurer que l'environnement de compilation est
147     correctement configuré, mais vous pouvez aussi comparer les options
148     de compilation et d'édition de liens à votre fichier .dsp.</p>
149
150     <p>Ceci devrait créer une version DLL de votre module. Il vous
151     suffit maintenant de l'enregistrer dans le répertoire
152     <code>modules</code> à la racine de votre serveur, et d'utiliser la
153     directive <code class="directive">LoadModule</code> pour la charger.</p>
154
155 </div>
156 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
157 <div class="directive-section"><h2><a name="LoadFile" id="LoadFile">LoadFile</a> <a name="loadfile" id="loadfile">Directive</a></h2>
158 <table class="directive">
159 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Liaison du fichier objet ou de la bibliothèque
160 spécifié</td></tr>
161 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LoadFile <em>nom-fichier</em> [<em>nom-fichier</em>] ...</code></td></tr>
162 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
163 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
164 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_so</td></tr>
165 </table>
166
167     <p>La directive LoadFile permet de lier le fichier objet ou la
168     bibliothèque spécifié au serveur lors du démarrage ou du redémarrage
169     de ce dernier ; ceci permet d'ajouter tout code additionnel
170     nécessaire au fonctionnement d'un module.
171     <em>nom-fichier</em> est soit un chemin absolu, soit un chemin
172     relatif au répertoire défini par la directive <a href="core.html#serverroot">ServerRoot</a>.</p>
173
174     <p>Par exemple:</p>
175
176     <pre class="prettyprint lang-config">LoadFile libexec/libxmlparse.so</pre>
177
178
179
180 </div>
181 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
182 <div class="directive-section"><h2><a name="LoadModule" id="LoadModule">LoadModule</a> <a name="loadmodule" id="loadmodule">Directive</a></h2>
183 <table class="directive">
184 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Liaison avec le serveur du fichier objet ou de la
185 bibliothèque spécifié, et ajout de ce dernier à la liste des modules
186 actifs</td></tr>
187 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LoadModule <em>module nom-fichier</em></code></td></tr>
188 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
189 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
190 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_so</td></tr>
191 </table>
192     <p>La directive LoadModule permet de lier le fichier objet ou la
193     bibliothèque <em>nom-fichier</em> avec le serveur, et d'ajouter la
194     structure de module nommée <em>module</em> à la liste des modules
195     actifs. <em>module</em> est le nom de la variable externe de type
196     <code>module</code> dans le fichier, et est référencé comme <a href="module-dict.html#ModuleIdentifier">Identificateur de
197     module</a> dans la documentation des modules. Exemple :</p>
198
199     <pre class="prettyprint lang-config">
200       LoadModule status_module modules/mod_status.so
201     </pre>
202
203
204     <p>charge le module spécifié depuis le sous-répertoire des modules
205     situé à la racine du serveur.</p>
206
207 </div>
208 </div>
209 <div class="bottomlang">
210 <p><span>Langues Disponibles: </span><a href="../en/mod/mod_so.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
211 <a href="../fr/mod/mod_so.html" title="Français">&nbsp;fr&nbsp;</a> |
212 <a href="../ja/mod/mod_so.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
213 <a href="../ko/mod/mod_so.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
214 <a href="../tr/mod/mod_so.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
215 </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&amp;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 <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
216 <script type="text/javascript"><!--//--><![CDATA[//><!--
217 var comments_shortname = 'httpd';
218 var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_so.html';
219 (function(w, d) {
220     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
221         d.write('<div id="comments_thread"><\/div>');
222         var s = d.createElement('script');
223         s.type = 'text/javascript';
224         s.async = true;
225         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
226         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
227     }
228     else {
229         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
230     }
231 })(window, document);
232 //--><!]]></script></div><div id="footer">
233 <p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
234 <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[//><!--
235 if (typeof(prettyPrint) !== 'undefined') {
236     prettyPrint();
237 }
238 //--><!]]></script>
239 </body></html>