1
0
mirror of https://github.com/apache/httpd.git synced 2025-11-02 06:53:27 +03:00
Files
apache/docs/manual/mod/mod_firehose.html.fr
2018-01-04 10:58:20 +00:00

316 lines
20 KiB
Plaintext
Raw Blame History

<?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>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_firehose - Serveur Apache HTTP Version 2.5</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/quickreference.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 Apache HTTP Version 2.5</p>
<img alt="" src="../images/feather.png" /></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> &gt; <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_firehose</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_firehose.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_firehose.html" title="Fran<61>ais">&nbsp;fr&nbsp;</a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Multiplexage des entr<74>es/sorties vers un fichier ou un pipe.</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur<75>de<64>Module:</a></th><td>firehose_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier<65>Source:</a></th><td>mod_firehose.c</td></tr></table>
<h3>Sommaire</h3>
<p><code>mod_firehose</code> fournit un m<>canisme permettant
d'enregistrer les donn<6E>es transmises entre le serveur httpd et le
client au niveau <20>l<EFBFBD>mentaire de la connexion dans un fichier ou un
pipe, de fa<66>on <20> ce que les donn<6E>es puissent <20>tre analys<79>es ou
rejou<6F>es ult<6C>rieurement par le serveur. Il s'apparente <20> un "tcpdump
pour httpd".</p>
<p>Les connexions sont enregistr<74>es apr<70>s d<>codage de la couche SSL,
et peuvent ainsi <20>tre utilis<69>es dans le cadre d'une r<>quisition
l<>gale.</p>
<p>L'utilitaire <code class="program"><a href="../programs/firehose.html">firehose</a></code> permet en retour de
d<>multiplexer le flux enregistr<74> dans des fichiers individuels pour
analyse ou rejeu via des outils tels que <code>netcat</code>.</p>
<div class="note"><h3>AVERTISSEMENT</h3>Ce module ignore tout m<>canisme
invoqu<71> au niveau de la requ<71>te pour rendre les donn<6E>es priv<69>es. Il
est donc de la responsabilit<69> de l'administrateur de s'assurer que
les donn<6E>es priv<69>es ne seront pas compromises par son utilisation.
</div>
</div>
<div id="quickview"><h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#enable">Activation de la "Lance <20> incendie" (Firehose)</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#format">Format du flux</a></li>
</ul><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#firehoseconnectioninput">FirehoseConnectionInput</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#firehoseconnectionoutput">FirehoseConnectionOutput</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#firehoseproxyconnectioninput">FirehoseProxyConnectionInput</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#firehoseproxyconnectionoutput">FirehoseProxyConnectionOutput</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#firehoserequestinput">FirehoseRequestInput</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#firehoserequestoutput">FirehoseRequestOutput</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__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mod_firehose">Probl<62>mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mod_firehose">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><code class="program"><a href="../programs/firehose.html">firehose</a></code></li>
<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="enable" id="enable">Activation de la "Lance <20> incendie" (Firehose)</a></h2>
<p>Pour activer ce module, il doit <20>tre compil<69> et charg<72> via la
configuration de votre instance httpd courante, et les directives
ci-dessous permettent de s<>lectionner les donn<6E>es que vous souhaitez
enregistrer.</p>
<p>Il est possible d'enregistrer les donn<6E>es entrantes et sortantes
dans le m<>me fichier, car la direction du flux est indiqu<71>e dans
chaque fragment.</p>
<p>Il est possible d'<27>crire vers des fichiers normaux ou des listes
fifos (pipes). Dans le cas des listes fifos, mod_firehose fait en
sorte que la taille des paquets ne d<>passe pas la valeur de PIPE_BUF
afin de s'assurer que l'<27>criture de ces derniers s'effectue en une
seule fois.</p>
<p>Si une liste fifo sous forme de pipe doit <20>tre utilis<69>e, pour que
cette derni<6E>re soit ouverte en <20>criture, certaines donn<6E>es doivent
en <20>tre extraites avant le d<>marrage de httpd. Si l'ouverture du
pipe <20>choue, mod_firehose ne sera pas activ<69>, et le serveur sera
lanc<6E> normalement.</p>
<p>Par d<>faut, toute tentative d'<27>criture bloque le serveur. Si le
serveur a <20>t<EFBFBD> compil<69> avec APR version 2.0 ou sup<75>rieure, et si le
param<61>tre "nonblock" a <20>t<EFBFBD> sp<73>cifi<66>, les <20>critures dans les fichiers
seront non blocantes, et tout d<>passement de tampon entra<72>nera la
perte des donn<6E>es de d<>bogage. Dans ce cas, il est possible donner
la priorit<69> <20> l'ex<65>cution du serveur sur l'enregistrement des
donn<6E>es firehose.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="format" id="format">Format du flux</a></h2>
<p>En g<>n<EFBFBD>ral, le serveur g<>re plusieurs connexions simultan<61>ment,
et de ce fait, les requ<71>tes et les r<>ponses doivent <20>tre
multiplex<65>es avant d'<27>tre <20>crites dans le firehose.</p>
<p>Chaque fragment se pr<70>sente sous la forme d'un texte en clair
de fa<66>on <20> ce qu'un firehose puisse <20>tre ouvert et inspect<63> par un
<20>diteur de texte standard. Il est aussi possible d'utiliser
l'utilitaire <code class="program"><a href="../programs/firehose.html">firehose</a></code> pour d<>multiplexer le
firehose en requ<71>tes ou connexions individuelles.</p>
<p>La taille maximale des fragments multiplex<65>s est d<>finie par la
variable PIPE_BUF. Elle correspond <20> la taille maximale d'un
<20>l<EFBFBD>ment que le syst<73>me peut <20>crire. Si la taille des fragments
multiplex<65>s reste en dessous de PIPE_BUF, le module garantit que les
contenus des diff<66>rents fragments ne se recouperont pas. La valeur
de PIPE_BUF varie en fonction du syst<73>me d'exploitation.</p>
<p>La BNF du format du fragment est la suivante :</p>
<pre> stream = 0*(fragment)
fragment = header CRLF body CRLF
header = length SPC timestamp SPC ( request | response ) SPC uuid SPC count
length = &lt;longueur de fragment sur 16 octets hexad<61>cimaux&gt;
timestamp = &lt;temps depuis 1970 en microsecondes sur 16 octets hexad<61>cimaux&gt;
request = "&lt;"
response = "&gt;"
uuid = &lt;uuid format<61> de la connexion&gt;
count = &lt;num<75>ro hexad<61>cimal du fragment dans la connexion&gt;
body = &lt;contenu binaire du fragment&gt;
SPC = &lt;un espace&gt;
CRLF = &lt;un retour chariot suivi d'une nouvelle ligne&gt;</pre>
<p>Tous les fragments d'une connexion ou d'une requ<71>te partagent le
m<>me UUID, selon que les connexions ou les requ<71>tes sont
enregistr<74>es ou non. Si les connexions sont enregistr<74>es, plusieurs
requ<71>tes peuvent appara<72>tre dans la m<>me connexion. Un fragment de
longueur nulle indique la fin de la connexion.</p>
<p>Certains fragments peuvent manquer ou <20>tre supprim<69>s si le
processus qui les lit est trop lent. Si cela se produit, il y aura
des trous dans le comptage des connections. Un avertissement
indiquant l'UUID et le num<75>ro du fragment supprim<69> sera enregistr<74>
dans le journal des erreurs.</p>
<p>En cas de crash ou d'arr<72>t forc<72> du processus httpd, il est
possible que le fragment vide de terminaison n'apparaisse pas. Cela
peut aussi se produire si le processus qui lit les fragments n'est
pas assez rapide.</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="firehoseconnectioninput" id="firehoseconnectioninput">Directive</a> <a name="FirehoseConnectionInput" id="FirehoseConnectionInput">FirehoseConnectionInput</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Capture le trafic entrant dans le serveur <20> chaque
connexion.</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>FirehoseConnectionInput <var>[ block | nonblock ]</var> <var>filename</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_firehose</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <20> partir de la version 2.5.0 du serveur HTTP
Apache.</td></tr>
</table>
<p>Capture le trafic entrant dans le serveur <20> chaque connexion.
Plusieurs requ<71>tes seront captur<75>es pour la m<>me connexion si les
connexions persistantes sont activ<69>es.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">FirehoseConnectionInput connection-input.firehose</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="firehoseconnectionoutput" id="firehoseconnectionoutput">Directive</a> <a name="FirehoseConnectionOutput" id="FirehoseConnectionOutput">FirehoseConnectionOutput</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Capture le trafic sortant du serveur <20> chaque connexion</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>FirehoseConnectionOutput <var>[ block | nonblock ]</var> <var>filename</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_firehose</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <20> partir de la version 2.5.0 du serveur HTTP
Apache.</td></tr>
</table>
<p>Capture le trafic sortant du serveur <20> chaque connexion.
Plusieurs requ<71>tes seront captur<75>es pour la m<>me connexion si les
connexions persistantes sont activ<69>es.
</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">FirehoseConnectionOutput connection-output.firehose</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="firehoseproxyconnectioninput" id="firehoseproxyconnectioninput">Directive</a> <a name="FirehoseProxyConnectionInput" id="FirehoseProxyConnectionInput">FirehoseProxyConnectionInput</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Capture le trafic entrant dans mod_proxy</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>FirehoseProxyConnectionInput <var>[ block | nonblock ]</var> <var>filename</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_firehose</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td /></tr>
</table>
<p>Capture le trafic re<72>u par mod_proxy.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">FirehoseProxyConnectionInput proxy-input.firehose</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="firehoseproxyconnectionoutput" id="firehoseproxyconnectionoutput">Directive</a> <a name="FirehoseProxyConnectionOutput" id="FirehoseProxyConnectionOutput">FirehoseProxyConnectionOutput</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Capture le trafic envoy<6F> par mod_proxy</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>FirehoseProxyConnectionOutput <var>[ block | nonblock ]</var> <var>filename</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_firehose</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <20> partir de la version 2.5.0 du serveur HTTP
Apache.</td></tr>
</table>
<p>Capture le trafic envoy<6F> par mod_proxy.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">FirehoseProxyConnectionOutput proxy-output.firehose</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="firehoserequestinput" id="firehoserequestinput">Directive</a> <a name="FirehoseRequestInput" id="FirehoseRequestInput">FirehoseRequestInput</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Capture le trafic entrant dans le serveur <20> chaque requ<71>te</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>FirehoseRequestInput <var>[ block | nonblock ]</var> <var>filename</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_firehose</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <20> partir de la version 2.5.0 du serveur HTTP
Apache.</td></tr>
</table>
<p>Capture le trafic entrant dans le serveur <20> chaque requ<71>te. Les
requ<71>tes sont captur<75>es s<>par<61>ment, que les connexions persistantes
soient activ<69>es ou non.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">FirehoseRequestInput request-input.firehose</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="firehoserequestoutput" id="firehoserequestoutput">Directive</a> <a name="FirehoseRequestOutput" id="FirehoseRequestOutput">FirehoseRequestOutput</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Capture le trafic sortant du serveur <20> chaque requ<71>te</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>FirehoseRequestOutput <var>[ block | nonblock ]</var> <var>filename</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>none</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_firehose</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <20> partir de la version 2.5.0 du serveur HTTP
Apache.</td></tr>
</table>
<p>Capture le trafic sortant du serveur <20> chaque requ<71>te. Les
requ<71>tes sont captur<75>es s<>par<61>ment, que les connexions persistantes
soient activ<69>es ou non.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">FirehoseRequestOutput request-output.firehose</pre>
</div>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_firehose.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_firehose.html" title="Fran<61>ais">&nbsp;fr&nbsp;</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&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>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_firehose.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 2018 The Apache Software Foundation.<br />Autoris<69> 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/quickreference.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>