4f372d1b10414884e2526724169d6027468ea473gryzor<?xml version="1.0"?>
4f372d1b10414884e2526724169d6027468ea473gryzor<!DOCTYPE modulesynopsis SYSTEM "/style/modulesynopsis.dtd">
4f372d1b10414884e2526724169d6027468ea473gryzor<?xml-stylesheet type="text/xsl" href="/style/manual.fr.xsl"?>
a1d62218cdb0efd0f02da1b54fd3eda91a681d98nd<!-- English Revision: 1655917:1674195 (outdated) -->
4f372d1b10414884e2526724169d6027468ea473gryzor<!-- French translation : Lucien GENTIS -->
4f372d1b10414884e2526724169d6027468ea473gryzor<!-- Reviewed by : Vincent Deffontaines -->
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<!--
4f372d1b10414884e2526724169d6027468ea473gryzor Licensed to the Apache Software Foundation (ASF) under one or more
4f372d1b10414884e2526724169d6027468ea473gryzor contributor license agreements. See the NOTICE file distributed with
4f372d1b10414884e2526724169d6027468ea473gryzor this work for additional information regarding copyright ownership.
4f372d1b10414884e2526724169d6027468ea473gryzor The ASF licenses this file to You under the Apache License, Version 2.0
4f372d1b10414884e2526724169d6027468ea473gryzor (the "License"); you may not use this file except in compliance with
4f372d1b10414884e2526724169d6027468ea473gryzor the License. You may obtain a copy of the License at
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor http://www.apache.org/licenses/LICENSE-2.0
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor Unless required by applicable law or agreed to in writing, software
4f372d1b10414884e2526724169d6027468ea473gryzor distributed under the License is distributed on an "AS IS" BASIS,
4f372d1b10414884e2526724169d6027468ea473gryzor WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
4f372d1b10414884e2526724169d6027468ea473gryzor See the License for the specific language governing permissions and
4f372d1b10414884e2526724169d6027468ea473gryzor limitations under the License.
4f372d1b10414884e2526724169d6027468ea473gryzor-->
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<modulesynopsis metafile="mod_deflate.xml.meta">
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<name>mod_deflate</name>
4f372d1b10414884e2526724169d6027468ea473gryzor<description>Comprime le contenu avant de le servir au
4f372d1b10414884e2526724169d6027468ea473gryzorclient</description>
4f372d1b10414884e2526724169d6027468ea473gryzor<status>Extension</status>
4f372d1b10414884e2526724169d6027468ea473gryzor<sourcefile>mod_deflate.c</sourcefile>
4f372d1b10414884e2526724169d6027468ea473gryzor<identifier>deflate_module</identifier>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<summary>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Le module <module>mod_deflate</module> impl&eacute;mente le filtre de
4f372d1b10414884e2526724169d6027468ea473gryzor sortie <code>DEFLATE</code> qui permet de comprimer la sortie de
4f372d1b10414884e2526724169d6027468ea473gryzor votre serveur avant de l'envoyer au client sur le r&eacute;seau.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor</summary>
4f372d1b10414884e2526724169d6027468ea473gryzor<seealso><a href="/filter.html">Les filtres</a></seealso>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<section id="recommended"><title>Exemples de configurations</title>
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis <note type="warning"><title>Compression et TLS</title>
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis <p>Certaines applications web sont vuln&eacute;rables &agrave; une attaque pour
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis vol d'informations lorsqu'une connexion TLS transporte des
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis donn&eacute;es compress&eacute;es par deflate. Pour plus de d&eacute;tails,
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis documentez-vous sur la famille d'attaques "BREACH".</p>
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis </note>
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis <p>Voici un exemple simple de configuration qui permet de comprimer
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis les types de contenu &agrave; base de texte.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <example><title>Ne comprime que certains types de documents</title>
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis </highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor </example>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor</section>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<section id="enable"><title>Activation de la compression</title>
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis <note type="warning"><title>Compression et TLS</title>
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis <p>Certaines applications web sont vuln&eacute;rables &agrave; une attaque pour
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis vol d'informations lorsqu'une connexion TLS transporte des
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis donn&eacute;es compress&eacute;es par deflate. Pour plus de d&eacute;tails,
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis documentez-vous sur la famille d'attaques "BREACH".</p>
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis </note>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <section id="output"><title>Compression de la sortie</title>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>La compression est impl&eacute;ment&eacute;e par le <a
4f372d1b10414884e2526724169d6027468ea473gryzor href="/filter.html">filtre</a> <code>DEFLATE</code>. La
4f372d1b10414884e2526724169d6027468ea473gryzor directive suivante active la compression des documents dans le
4f372d1b10414884e2526724169d6027468ea473gryzor conteneur o&ugrave; elle est plac&eacute;e :</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentisSetOutputFilter DEFLATE
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentisSetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip
dfb30ad72e3edf034d86c44c31ad9c8b1c41f178lgentis </highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Si vous voulez limiter la compression &agrave; certains types MIME
4f372d1b10414884e2526724169d6027468ea473gryzor particuliers, vous pouvez utiliser la directive <directive
1f8ff58254f12b4a0756dc2bd173fcd4a401d3e2lgentis module="mod_filter">AddOutputFilterByType</directive>. Voici un exemple
4f372d1b10414884e2526724169d6027468ea473gryzor o&ugrave; la compression n'est activ&eacute;e que pour les fichiers html de la
4f372d1b10414884e2526724169d6027468ea473gryzor documentation d'Apache :</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis&lt;Directory "/your-server-root/manual"&gt;
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis AddOutputFilterByType DEFLATE text/html
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis&lt;/Directory&gt;
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis </highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <note><title>Note</title>
4f372d1b10414884e2526724169d6027468ea473gryzor Le filtre <code>DEFLATE</code> est toujours ins&eacute;r&eacute; apr&egrave;s les
4f372d1b10414884e2526724169d6027468ea473gryzor filtres RESOURCE comme PHP ou SSI. Il n'affecte jamais les
4f372d1b10414884e2526724169d6027468ea473gryzor sous-requ&ecirc;tes internes.
4f372d1b10414884e2526724169d6027468ea473gryzor </note>
4f372d1b10414884e2526724169d6027468ea473gryzor <note><title>Note</title>
4f372d1b10414884e2526724169d6027468ea473gryzor La variable d'environnement <code>force-gzip</code>, d&eacute;finie &agrave;
4f372d1b10414884e2526724169d6027468ea473gryzor l'aide de la directive <directive
699c9f9d20c0a2acd4617d802e90c447c4c33b00lgentis module="mod_env">SetEnv</directive>, permet d'ignorer la
4f372d1b10414884e2526724169d6027468ea473gryzor configuration de votre navigateur quant aux codages accept&eacute;s, et
4f372d1b10414884e2526724169d6027468ea473gryzor d'envoyer sans condition une sortie comprim&eacute;e.
4f372d1b10414884e2526724169d6027468ea473gryzor </note>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor </section>
4f372d1b10414884e2526724169d6027468ea473gryzor <section id="inflate"><title>D&eacute;compression de la sortie</title>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Le module <module>mod_deflate</module> fournit aussi un filtre
4f372d1b10414884e2526724169d6027468ea473gryzor permettant de d&eacute;comprimer un corps de r&eacute;ponse comprim&eacute; par gzip.
4f372d1b10414884e2526724169d6027468ea473gryzor Pour activer cette fonctionnalit&eacute;, vous devez ins&eacute;rer le filtre
4f372d1b10414884e2526724169d6027468ea473gryzor <code>INFLATE</code> dans la cha&icirc;ne de filtrage en sortie via la
4f372d1b10414884e2526724169d6027468ea473gryzor directive <directive module="core">SetOutputFilter</directive> ou
4f372d1b10414884e2526724169d6027468ea473gryzor <directive module="mod_mime">AddOutputFilter</directive>, comme
4f372d1b10414884e2526724169d6027468ea473gryzor dans l'exemple suivant :</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis&lt;Location /dav-area&gt;
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis ProxyPass http://example.com/
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis SetOutputFilter INFLATE
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis&lt;/Location&gt;
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis </highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Dans cet exemple, les sorties comprim&eacute;es par gzip en
4f372d1b10414884e2526724169d6027468ea473gryzor provenance de example.com seront d&eacute;comprim&eacute;es afin de pouvoir
4f372d1b10414884e2526724169d6027468ea473gryzor &ecirc;tre &eacute;ventuellement trait&eacute;es par d'autres filtres.
4f372d1b10414884e2526724169d6027468ea473gryzor </p>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor </section>
4f372d1b10414884e2526724169d6027468ea473gryzor <section id="input"><title>D&eacute;compression de l'entr&eacute;e</title>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Le module <module>mod_deflate</module> fournit &eacute;galement un filtre
4f372d1b10414884e2526724169d6027468ea473gryzor permettant de d&eacute;comprimer un corps de requ&ecirc;te comprim&eacute; par gzip.
4f372d1b10414884e2526724169d6027468ea473gryzor Pour activer cette fonctionnalit&eacute;, vous devez ins&eacute;rer le filtre
4f372d1b10414884e2526724169d6027468ea473gryzor <code>DEFLATE</code> dans la cha&icirc;ne de filtrage en entr&eacute;e via la
4f372d1b10414884e2526724169d6027468ea473gryzor directive <directive module="core">SetInputFilter</directive> ou
4f372d1b10414884e2526724169d6027468ea473gryzor <directive module="mod_mime">AddInputFilter</directive>, comme
4f372d1b10414884e2526724169d6027468ea473gryzor dans l'exemple suivant :</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis&lt;Location /dav-area&gt;
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis SetInputFilter DEFLATE
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis&lt;/Location&gt;
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis </highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <p>D&eacute;sormais, si une requ&ecirc;te contient un en-t&ecirc;te
4f372d1b10414884e2526724169d6027468ea473gryzor <code>Content-Encoding: gzip</code>, son corps sera
4f372d1b10414884e2526724169d6027468ea473gryzor automatiquement d&eacute;comprim&eacute;. Peu de navigateurs sont actuellement
4f372d1b10414884e2526724169d6027468ea473gryzor en mesure de comprimer les corps de requ&ecirc;tes. Cependant,
4f372d1b10414884e2526724169d6027468ea473gryzor certaines applications sp&eacute;cialis&eacute;es supportent les requ&ecirc;tes
4f372d1b10414884e2526724169d6027468ea473gryzor comprim&eacute;es, comme par exemple certains clients <a
4f372d1b10414884e2526724169d6027468ea473gryzor href="http://www.webdav.org">WebDAV</a>.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <note type="warning"><title>Note &agrave; propos de l'en-t&ecirc;te
4f372d1b10414884e2526724169d6027468ea473gryzor <code>Content-Length</code></title>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Si vous &eacute;valuez vous-m&ecirc;me la taille du corps de requ&ecirc;te,
4f372d1b10414884e2526724169d6027468ea473gryzor <em>ne faites pas confiance &agrave; l'en-t&ecirc;te
4f372d1b10414884e2526724169d6027468ea473gryzor <code>Content-Length</code>!</em> L'en-t&ecirc;te
4f372d1b10414884e2526724169d6027468ea473gryzor Content-Length indique la longueur des donn&eacute;es en provenance du
4f372d1b10414884e2526724169d6027468ea473gryzor client, et <em>non</em> la quantit&eacute; d'octets que repr&eacute;sente le
4f372d1b10414884e2526724169d6027468ea473gryzor flux de donn&eacute;es d&eacute;compress&eacute;.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor </note>
4f372d1b10414884e2526724169d6027468ea473gryzor </section>
4f372d1b10414884e2526724169d6027468ea473gryzor</section>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<section id="proxies"><title>Prise en compte des serveurs mandataires</title>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Le module <module>mod_deflate</module> envoie un en-t&ecirc;te de
4f372d1b10414884e2526724169d6027468ea473gryzor r&eacute;ponse HTTP <code>Vary: Accept-Encoding</code> pour avertir les
4f372d1b10414884e2526724169d6027468ea473gryzor mandataires qu'une r&eacute;ponse enregistr&eacute;e dans le cache ne doit &ecirc;tre
4f372d1b10414884e2526724169d6027468ea473gryzor envoy&eacute;e qu'aux clients qui ont envoy&eacute; l'en-t&ecirc;te de requ&ecirc;te
4f372d1b10414884e2526724169d6027468ea473gryzor <code>Accept-Encoding</code> appropri&eacute;. Ceci permet d'&eacute;viter l'envoi
4f372d1b10414884e2526724169d6027468ea473gryzor d'un contenu comprim&eacute; &agrave; un client qui ne sera pas en mesure
4f372d1b10414884e2526724169d6027468ea473gryzor de l'interpr&eacute;ter.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Si vous avez d&eacute;fini des exclusions sp&eacute;cifiques d&eacute;pendant, par
4f372d1b10414884e2526724169d6027468ea473gryzor exemple, de l'en-t&ecirc;te <code>User-Agent</code>, vous devez
4f372d1b10414884e2526724169d6027468ea473gryzor ajouter manuellement des donn&eacute;es &agrave; l'en-t&ecirc;te <code>Vary</code> afin
4f372d1b10414884e2526724169d6027468ea473gryzor d'informer les mandataires des restrictions suppl&eacute;mentaires. Par
4f372d1b10414884e2526724169d6027468ea473gryzor exemple, dans la configuration classique o&ugrave; l'addition du filtre
4f372d1b10414884e2526724169d6027468ea473gryzor <code>DEFLATE</code> d&eacute;pend du contenu de l'en-t&ecirc;te
4f372d1b10414884e2526724169d6027468ea473gryzor <code>User-Agent</code>, vous devez sp&eacute;cifier :</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
4f372d1b10414884e2526724169d6027468ea473gryzor Header append Vary User-Agent
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis </highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Si votre d&eacute;cision de comprimer le contenu d&eacute;pend d'autres
4f372d1b10414884e2526724169d6027468ea473gryzor informations que celles contenues dans les en-t&ecirc;tes de la requ&ecirc;te
4f372d1b10414884e2526724169d6027468ea473gryzor (par exemple la version HTTP), vous devez attribuer &agrave; l'en-t&ecirc;te
4f372d1b10414884e2526724169d6027468ea473gryzor <code>Vary</code> la valeur <code>*</code>, ce qui permet d'emp&ecirc;cher
4f372d1b10414884e2526724169d6027468ea473gryzor les mandataires compatibles de tout mettre en cache.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <example><title>Exemple</title>
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
4f372d1b10414884e2526724169d6027468ea473gryzor Header set Vary *
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis </highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor </example>
4f372d1b10414884e2526724169d6027468ea473gryzor</section>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor<name>DeflateFilterNote</name>
4f372d1b10414884e2526724169d6027468ea473gryzor<description>Enregistre le taux de compression sous la forme d'une note
4f372d1b10414884e2526724169d6027468ea473gryzor&agrave; des fins de journalisation</description>
4f372d1b10414884e2526724169d6027468ea473gryzor<syntax>DeflateFilterNote [<var>type</var>] <var>nom de la note</var></syntax>
4f372d1b10414884e2526724169d6027468ea473gryzor<contextlist><context>server config</context><context>virtual host</context>
4f372d1b10414884e2526724169d6027468ea473gryzor</contextlist>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<usage>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>La directive <directive>DeflateFilterNote</directive> permet de
4f372d1b10414884e2526724169d6027468ea473gryzor sp&eacute;cifier qu'une note &agrave; propos du taux de compression doit &ecirc;tre
4f372d1b10414884e2526724169d6027468ea473gryzor attach&eacute;e &agrave; la requ&ecirc;te. Le nom de la note est pass&eacute; sous la forme
4f372d1b10414884e2526724169d6027468ea473gryzor d'un argument de la directive. Vous pouvez utiliser cette note &agrave; des
4f372d1b10414884e2526724169d6027468ea473gryzor fins statistiques en enregistrant sa valeur dans votre <a
4f372d1b10414884e2526724169d6027468ea473gryzor href="/logs.html#accesslog">journal des acc&egrave;s</a>.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <example><title>Exemple</title>
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis DeflateFilterNote ratio
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis LogFormat '"%r" %b (%{ratio}n) "%{User-agent}i"' deflate
4f372d1b10414884e2526724169d6027468ea473gryzor CustomLog logs/deflate_log deflate
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis </highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor </example>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Pour extraire des informations plus pr&eacute;cises de vos journaux,
4f372d1b10414884e2526724169d6027468ea473gryzor vous pouvez utiliser l'argument <var>type</var> pour sp&eacute;cifier le
4f372d1b10414884e2526724169d6027468ea473gryzor type de donn&eacute;es de la note enregistr&eacute;e dans le journal.
4f372d1b10414884e2526724169d6027468ea473gryzor <var>type</var> peut prendre une des valeurs suivantes :</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <dl>
4f372d1b10414884e2526724169d6027468ea473gryzor <dt><code>Input</code></dt>
4f372d1b10414884e2526724169d6027468ea473gryzor <dd>Enregistre dans la note la taille en octets du flux en entr&eacute;e
4f372d1b10414884e2526724169d6027468ea473gryzor du filtre.</dd>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <dt><code>Output</code></dt>
4f372d1b10414884e2526724169d6027468ea473gryzor <dd>Enregistre dans la note la taille en octets du flux en sortie
4f372d1b10414884e2526724169d6027468ea473gryzor du filtre.</dd>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <dt><code>Ratio</code></dt>
4f372d1b10414884e2526724169d6027468ea473gryzor <dd>Enregistre le taux de compression (<code>sortie/entr&eacute;e *
4f372d1b10414884e2526724169d6027468ea473gryzor 100</code>) dans la note. Il s'agit de la valeur par d&eacute;faut si
4f372d1b10414884e2526724169d6027468ea473gryzor l'argument <var>type</var> est omis.</dd>
4f372d1b10414884e2526724169d6027468ea473gryzor </dl>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <p>Vous pouvez donc configurer votre journalisation de la mani&egrave;re
4f372d1b10414884e2526724169d6027468ea473gryzor suivante :</p>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor <example><title>Journalisation d&eacute;taill&eacute;e</title>
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis <highlight language="config">
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentisDeflateFilterNote Input instream
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentisDeflateFilterNote Output outstream
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentisDeflateFilterNote Ratio ratio
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentisLogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentisCustomLog logs/deflate_log deflate
92a7702da86bfc911826050b5c6f6593d3fa3ff5lgentis</highlight>
4f372d1b10414884e2526724169d6027468ea473gryzor </example>
4f372d1b10414884e2526724169d6027468ea473gryzor</usage>
4f372d1b10414884e2526724169d6027468ea473gryzor<seealso><module>mod_log_config</module></seealso>
4f372d1b10414884e2526724169d6027468ea473gryzor</directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor<name>DeflateBufferSize</name>
4f372d1b10414884e2526724169d6027468ea473gryzor<description>Taille du fragment que zlib devra comprimer en une seule
4f372d1b10414884e2526724169d6027468ea473gryzorfois</description>
4f372d1b10414884e2526724169d6027468ea473gryzor<syntax>DeflateBufferSize <var>valeur</var></syntax>
4f372d1b10414884e2526724169d6027468ea473gryzor<default>DeflateBufferSize 8096</default>
4f372d1b10414884e2526724169d6027468ea473gryzor<contextlist><context>server config</context><context>virtual host</context>
4f372d1b10414884e2526724169d6027468ea473gryzor</contextlist>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<usage>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>La directive <directive>DeflateBufferSize</directive> permet de
4f372d1b10414884e2526724169d6027468ea473gryzor sp&eacute;cifier la taille en octets du fragment que zlib devra comprimer
4f372d1b10414884e2526724169d6027468ea473gryzor en une seule fois.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor</usage>
4f372d1b10414884e2526724169d6027468ea473gryzor</directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor<name>DeflateWindowSize</name>
4f372d1b10414884e2526724169d6027468ea473gryzor<description>Taille de la fen&ecirc;tre de compression zlib</description>
4f372d1b10414884e2526724169d6027468ea473gryzor<syntax>DeflateWindowSize <var>valeur</var></syntax>
4f372d1b10414884e2526724169d6027468ea473gryzor<default>DeflateWindowSize 15</default>
4f372d1b10414884e2526724169d6027468ea473gryzor<contextlist><context>server config</context><context>virtual host</context>
4f372d1b10414884e2526724169d6027468ea473gryzor</contextlist>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<usage>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>La directive <directive>DeflateWindowSize</directive> permet de
4f372d1b10414884e2526724169d6027468ea473gryzor sp&eacute;cifier la fen&ecirc;tre de compression zlib (une valeur comprise entre
4f372d1b10414884e2526724169d6027468ea473gryzor 1 et 15). En g&eacute;n&eacute;ral, plus grande sera la taille de la fen&ecirc;tre, plus
4f372d1b10414884e2526724169d6027468ea473gryzor grand sera le taux de compression auquel on pourra s'attendre.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor</usage>
4f372d1b10414884e2526724169d6027468ea473gryzor</directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<name>DeflateMemLevel</name>
4f372d1b10414884e2526724169d6027468ea473gryzor<description>La quantit&eacute; de m&eacute;moire utilisable par zlib pour la
4f372d1b10414884e2526724169d6027468ea473gryzorcompression</description>
4f372d1b10414884e2526724169d6027468ea473gryzor<syntax>DeflateMemLevel <var>valeur</var></syntax>
4f372d1b10414884e2526724169d6027468ea473gryzor<default>DeflateMemLevel 9</default>
4f372d1b10414884e2526724169d6027468ea473gryzor<contextlist><context>server config</context><context>virtual host</context>
4f372d1b10414884e2526724169d6027468ea473gryzor</contextlist>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<usage>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>La directive <directive>DeflateMemLevel</directive> permet de
4f372d1b10414884e2526724169d6027468ea473gryzor sp&eacute;cifier la quantit&eacute; de m&eacute;moire utilisable par zlib pour la
4f372d1b10414884e2526724169d6027468ea473gryzor compression (une valeur comprise entre 1 et 9).</p>
4f372d1b10414884e2526724169d6027468ea473gryzor</usage>
4f372d1b10414884e2526724169d6027468ea473gryzor</directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor<name>DeflateCompressionLevel</name>
4f372d1b10414884e2526724169d6027468ea473gryzor<description>Le niveau de compression que nous appliquons &agrave; la
4f372d1b10414884e2526724169d6027468ea473gryzorsortie</description>
4f372d1b10414884e2526724169d6027468ea473gryzor<syntax>DeflateCompressionLevel <var>valeur</var></syntax>
4f372d1b10414884e2526724169d6027468ea473gryzor<default>La valeur par d&eacute;faut de zlib</default>
4f372d1b10414884e2526724169d6027468ea473gryzor<contextlist><context>server config</context><context>virtual host</context>
4f372d1b10414884e2526724169d6027468ea473gryzor</contextlist>
4f372d1b10414884e2526724169d6027468ea473gryzor
4f372d1b10414884e2526724169d6027468ea473gryzor<usage>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>La directive <directive>DeflateCompressionLevel</directive>
4f372d1b10414884e2526724169d6027468ea473gryzor permet de sp&eacute;cifier le niveau de compression &agrave; utiliser ; plus
4f372d1b10414884e2526724169d6027468ea473gryzor grande est la valeur, meilleure sera la compression, mais plus grand
4f372d1b10414884e2526724169d6027468ea473gryzor sera aussi le temps CPU n&eacute;cessaire pour effectuer le
4f372d1b10414884e2526724169d6027468ea473gryzor traitement.</p>
4f372d1b10414884e2526724169d6027468ea473gryzor <p>La valeur doit &ecirc;tre comprise entre 1 (compression minimale) et 9
4f372d1b10414884e2526724169d6027468ea473gryzor (compression maximale).</p>
4f372d1b10414884e2526724169d6027468ea473gryzor</usage>
4f372d1b10414884e2526724169d6027468ea473gryzor</directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor
3169b556e342e88cdd0719be473eaf27d3084340lgentis<directivesynopsis>
3169b556e342e88cdd0719be473eaf27d3084340lgentis<name>DeflateAlterETag</name>
3169b556e342e88cdd0719be473eaf27d3084340lgentis<description>Comment l'en-t&ecirc;te sortant ETag doit &ecirc;tre modifi&eacute; au cours
3169b556e342e88cdd0719be473eaf27d3084340lgentisde la compression</description>
3169b556e342e88cdd0719be473eaf27d3084340lgentis<syntax>DeflateAlterETag AddSuffix|NoChange|Remove</syntax>
3169b556e342e88cdd0719be473eaf27d3084340lgentis<default>DeflateAlterETag AddSuffix</default>
3169b556e342e88cdd0719be473eaf27d3084340lgentis<contextlist><context>server config</context><context>virtual host</context>
3169b556e342e88cdd0719be473eaf27d3084340lgentis</contextlist>
3169b556e342e88cdd0719be473eaf27d3084340lgentis
3169b556e342e88cdd0719be473eaf27d3084340lgentis<usage>
3169b556e342e88cdd0719be473eaf27d3084340lgentis <p>La directive <directive>DeflateAlterETag</directive> permet de
3169b556e342e88cdd0719be473eaf27d3084340lgentis sp&eacute;cifier comment l'en-t&ecirc;te ETag doit &ecirc;tre modifi&eacute; lorsqu'une
3169b556e342e88cdd0719be473eaf27d3084340lgentis r&eacute;ponse est compress&eacute;e.</p>
3169b556e342e88cdd0719be473eaf27d3084340lgentis <dl>
3169b556e342e88cdd0719be473eaf27d3084340lgentis <dt>AddSuffix</dt>
3169b556e342e88cdd0719be473eaf27d3084340lgentis <dd><p>Ajoute la m&eacute;thode de compression &agrave; la fin de l'en-t&ecirc;te, ce
3169b556e342e88cdd0719be473eaf27d3084340lgentis qui a pour effet d'attribuer un en-t&ecirc;te ETag unique aux
3169b556e342e88cdd0719be473eaf27d3084340lgentis repr&eacute;sentations compress&eacute;es et non compress&eacute;es. C'est l'option par
3169b556e342e88cdd0719be473eaf27d3084340lgentis d&eacute;faut depuis la version 2.4.0, mais emp&ecirc;che de servir des
3169b556e342e88cdd0719be473eaf27d3084340lgentis codes d'&eacute;tat "HTTP Not Modified" (304) en r&eacute;ponse aux requ&ecirc;tes pour un
3169b556e342e88cdd0719be473eaf27d3084340lgentis contenu compress&eacute;.</p></dd>
3169b556e342e88cdd0719be473eaf27d3084340lgentis <dt>NoChange</dt>
3169b556e342e88cdd0719be473eaf27d3084340lgentis <dd><p>Ne modifie pas l'en-t&ecirc;te ETag dans une r&eacute;ponse compress&eacute;e.
3169b556e342e88cdd0719be473eaf27d3084340lgentis C'&eacute;tait l'option par
3169b556e342e88cdd0719be473eaf27d3084340lgentis d&eacute;faut avant la version 2.4.0, mais cela ne respectait pas la
3169b556e342e88cdd0719be473eaf27d3084340lgentis pr&eacute;conisation HTTP/1.1 selon laquelle chaque repr&eacute;sentation de la
3169b556e342e88cdd0719be473eaf27d3084340lgentis m&ecirc;me ressource doit poss&eacute;der un en-t&ecirc;te ETag unique.</p></dd>
3169b556e342e88cdd0719be473eaf27d3084340lgentis <dt>Remove</dt>
3169b556e342e88cdd0719be473eaf27d3084340lgentis <dd><p>Supprime l'en-t&ecirc;te ETag dans les r&eacute;ponses compress&eacute;es, ce qui
3169b556e342e88cdd0719be473eaf27d3084340lgentis a pour effet de rendre impossibles certaines requ&ecirc;tes
3169b556e342e88cdd0719be473eaf27d3084340lgentis conditionnelles, mais permet d'&eacute;viter les inconv&eacute;nients des options
3169b556e342e88cdd0719be473eaf27d3084340lgentis pr&eacute;c&eacute;dentes.</p></dd>
3169b556e342e88cdd0719be473eaf27d3084340lgentis </dl>
3169b556e342e88cdd0719be473eaf27d3084340lgentis</usage>
3169b556e342e88cdd0719be473eaf27d3084340lgentis</directivesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<directivesynopsis>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<name>DeflateInflateLimitRequestBody</name>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<description>Taille maximale des corps de requ&ecirc;te d&eacute;compress&eacute;s</description>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<syntax>DeflateInflateLimitRequestBody<var>value</var></syntax>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<default>Aucune limite, mais LimitRequestBody s'applique apr&egrave;s la
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentiscompression</default>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<contextlist><context>server config</context><context>virtual host</context>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<context>directory</context><context>.htaccess</context></contextlist>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<compatibility>Disponible &agrave; partir de la version 2.4.10 du serveur HTTP
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentisApache</compatibility>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<usage>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis <p>La directive
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis <directive>DeflateInflateLimitRequestBody</directive> permet de
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis sp&eacute;cifier la taille maximale d'un corps de requ&ecirc;te d&eacute;compress&eacute;. Si
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis elle n'est pas d&eacute;finie, c'est la valeur de la directive <directive
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis module="core">LimitRequestBody</directive> qui s'applique au corps
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis de requ&ecirc;te d&eacute;compress&eacute;.</p>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis</usage>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis</directivesynopsis>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<directivesynopsis>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<name>DeflateInflateRatioLimit</name>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<description>Ratio de d&eacute;compression maximum pour les corps de requ&ecirc;tes</description>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<syntax>DeflateInflateRatioLimit <var>value</var></syntax>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<default>200</default>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<contextlist><context>server config</context><context>virtual host</context>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<context>directory</context><context>.htaccess</context></contextlist>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<compatibility>Disponible &agrave; partir de la version 2.4.10 du serveur HTTP
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentisApache</compatibility>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<usage>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis <p>La directive <directive>DeflateInflateRatioLimit</directive>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis permet de d&eacute;finir le ratio maximum entre la taille d'un corps de
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis requ&ecirc;te compress&eacute; et sa taille d&eacute;compress&eacute;e. Ce ratio est v&eacute;rifi&eacute; au
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis fur et &agrave; mesure de
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis l'arriv&eacute;e du corps de requ&ecirc;te, et s'il est d&eacute;pass&eacute; plus de
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis <directive>DeflateInflateRatioBurst</directive> fois, le traitement
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis de la requ&ecirc;te est interrompu.</p>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis</usage>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis</directivesynopsis>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<directivesynopsis>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<name>DeflateInflateRatioBurst</name>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<description>Nombre maximal de fois que le ratio de d&eacute;compression d'un
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentiscorps de requ&ecirc;te peut &ecirc;tre d&eacute;pass&eacute;</description>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<syntax>DeflateInflateRatioBurst <var>value</var></syntax>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<default>3</default>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<contextlist><context>server config</context><context>virtual host</context>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<context>directory</context><context>.htaccess</context></contextlist>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<compatibility>Disponible &agrave; partir de la version 2.4.10 du serveur HTTP
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentisApache</compatibility>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis<usage>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis <p>La directive <directive>DeflateInflateRatioBurst</directive>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis permet de sp&eacute;cifier le nombre maximal de fois que la valeur de la
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis directive <directive>DeflateInflateRatioLimit</directive> peut &ecirc;tre
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis d&eacute;pass&eacute; avant l'arr&ecirc;t du traitement de la requ&ecirc;te.</p>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis</usage>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis</directivesynopsis>
9d0344c03624b3ca80ab413c1306eaf9a0b44df8lgentis
4f372d1b10414884e2526724169d6027468ea473gryzor</modulesynopsis>
4f372d1b10414884e2526724169d6027468ea473gryzor