summaryrefslogtreecommitdiff
path: root/docs/manual/handler.html.fr
blob: ce551931ad8af4f203e0326f87058a6210aadb44 (plain)
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
<?xml version="1.0" encoding="ISO-8859-1"?>
<!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><!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>Utilisation des gestionnaires d'Apache (handlers) - Serveur Apache HTTP</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 href="./images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.5</p>
<img alt="" src="./images/feather.gif" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
<div id="path">
<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></div><div id="page-content"><div id="preamble"><h1>Utilisation des gestionnaires d'Apache (handlers)</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="./en/handler.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="./es/handler.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
<a href="./fr/handler.html" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/handler.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="./ko/handler.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="./tr/handler.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a> |
<a href="./zh-cn/handler.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese">&nbsp;zh-cn&nbsp;</a></p>
</div>

    <p>Ce document décrit l'utilisation des gestionnaires d'Apache (handlers).</p>
  </div>
<div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#definition">Qu'est-ce qu'un gestionnaire ?</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#examples">Exemples</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#programmer">Note du développeur</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="definition" id="definition">Qu'est-ce qu'un gestionnaire ?</a></h2>
    
    <table class="related"><tr><th>Modules Apparentés</th><th>Directives Apparentées</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_actions.html">mod_actions</a></code></li><li><code class="module"><a href="./mod/mod_asis.html">mod_asis</a></code></li><li><code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code></li><li><code class="module"><a href="./mod/mod_imagemap.html">mod_imagemap</a></code></li><li><code class="module"><a href="./mod/mod_info.html">mod_info</a></code></li><li><code class="module"><a href="./mod/mod_mime.html">mod_mime</a></code></li><li><code class="module"><a href="./mod/mod_negotiation.html">mod_negotiation</a></code></li><li><code class="module"><a href="./mod/mod_status.html">mod_status</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_actions.html#action">Action</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addhandler">AddHandler</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removehandler">RemoveHandler</a></code></li><li><code class="directive"><a href="./mod/core.html#sethandler">SetHandler</a></code></li></ul></td></tr></table>


    <p>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.</p>

    <p>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 <strong>et</strong> un gestionnaire avec un fichier. (Voir aussi <a href="mod/mod_mime.html#multipleext">Fichiers avec extensions
    multiples</a>.)</p>

    <p>Les gestionnaires peuvent être soit partie intégrante
    du serveur ou inclus dans un module, soit ajoutés à l'aide de la directive
    <code class="directive"><a href="./mod/mod_actions.html#action">Action</a></code>. Les gestionnaires
    intégrés dans la distribution standard se présentent comme suit :</p>

    <ul>
      <li><strong>default-handler</strong>: envoie le fichier en utilisant
      le <code>default_handler()</code>, qui est le gestionnaire utilisé par
      défaut pour traiter les contenus statiques. (core)</li>

      <li><strong>send-as-is</strong>: envoie les fichiers avec en-têtes HTTP
      tels quels. (<code class="module"><a href="./mod/mod_asis.html">mod_asis</a></code>)</li>

      <li><strong>cgi-script</strong>: traite le fichier comme un
      script CGI. (<code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code>)</li>

      <li><strong>imap-file</strong>: Traite le fichier comme un ensemble
      de règles de descriptions d'images (imagemap).
      (<code class="module"><a href="./mod/mod_imagemap.html">mod_imagemap</a></code>)</li>

      <li><strong>server-info</strong>: Extrait des informations sur la
      configuration du serveur. (<code class="module"><a href="./mod/mod_info.html">mod_info</a></code>)</li>

      <li><strong>server-status</strong>: Rédige un rapport sur le statut
      du serveur. (<code class="module"><a href="./mod/mod_status.html">mod_status</a></code>)</li>

      <li><strong>type-map</strong>: Traite le fichier comme une description
      de type pour la négociation du contenu.
      (<code class="module"><a href="./mod/mod_negotiation.html">mod_negotiation</a></code>)</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="examples" id="examples">Exemples</a></h2>
    

    <h3><a name="example1" id="example1">Modification d'un contenu statique à l'aide d'un script CGI</a></h3>
      

      <p>Les directives suivantes vont faire en sorte que les requêtes pour
      des fichiers possédant une extension <code>html</code> déclenchent
      l'exécution du script CGI <code>footer.pl</code>.</p>

      <div class="example"><p><code>
        Action add-footer /cgi-bin/footer.pl<br />
        AddHandler add-footer .html
      </code></p></div>

      <p>À ce moment-là, le script CGI se charge d'envoyer le document
      initialement demandé (référencé par la variable d'environnement
      <code>PATH_TRANSLATED</code>) et d'effectuer tous ajout ou modification
      voulus.</p>

    
    <h3><a name="example2" id="example2">Fichiers avec en-têtes HTTP</a></h3>
      

      <p>Les directives suivantes vont activer le gestionnaire
      <code>send-as-is</code>, qui est utilisé pour les fichiers qui possèdent
      leurs propres en-têtes HTTP. Tous les fichiers situés dans le répertoire
      <code>/web/htdocs/asis/</code> seront traités par le gestionnaire
      <code>send-as-is</code>, sans tenir compte de l'extension
      de leur nom de fichier.</p>

      <div class="example"><p><code>
        &lt;Directory /web/htdocs/asis&gt;<br />
        SetHandler send-as-is<br />
        &lt;/Directory&gt;
      </code></p></div>

    
  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="programmer" id="programmer">Note du développeur</a></h2>
    

    <p>Pour implémenter la fonctionnalité des gestionnaires, l'
    <a href="developer/API.html">API Apache</a> 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
    <code>request_rec</code> :</p>

    <div class="example"><p><code>
      char *handler
    </code></p></div>

    <p>Si vous voulez que votre module déclenche l'utilisation d'un
    gestionnaire, il vous suffit de définir <code>r-&gt;handler</code> avec
    le nom du gestionnaire à n'importe quel moment avant l'étape
    <code>invoke_handler</code>
    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.</p>
  </div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="./en/handler.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="./es/handler.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
<a href="./fr/handler.html" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/handler.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="./ko/handler.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="./tr/handler.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a> |
<a href="./zh-cn/handler.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese">&nbsp;zh-cn&nbsp;</a></p>
</div><div id="footer">
<p class="apache">Copyright 2011 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="./faq/">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p></div>
</body></html>