<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<modulesynopsis>

<name>mod_deflate</name>
<description>Compress content before
    it is delivered to the client</description>
<status>Extension</status>
<sourcefile>mod_deflate.c</sourcefile>
<identifier>deflate_module</identifier>

<summary>
    <p>The <module>mod_deflate</module> module provides
    the <code>DEFLATE</code> output filter that allows output from
    your server to be compressed before being sent to the client over
    the network.</p>
</summary>
<seealso><directive module="mod_mime">AddOutputFilter</directive></seealso>
<seealso><directive module="core">SetOutputFilter</directive></seealso>

<section><title>Enabling Compression</title>

    <p>Compression is implemented by the <code>DEFLATE</code>
    <a href="../filter.html">filter</a>. The following directive
    will enable compression for documents in the container where it
    is placed:</p>
    <p><strong>Most popular browsers can not handle compression of all content
        so you may want to set the 'gzip-only-text/html' note to 1 to only 
        allow html files to be compressed (see below).</strong></p>
    <p><strong>If you set this to anything but '1' it will be ignored, so you can do
       negative matches.</strong></p>

<example>SetEnv gzip-only-text/html 1<br />
SetOutputFilter DEFLATE
</example>

    <p>Here is an example of enabling compression for the Apache
    documentation:</p>

<example>
&lt;Directory "/your-server-root/manual"&gt;<br />
      SetEnv gzip-only-text/html 1<br />
      SetOutputFilter DEFLATE<br />
&lt;/Directory&gt;
</example>
</section>

<directivesynopsis>
<name>DeflateFilterNote</name>
<description>Places the compression ratio in a note for logging</description>
<syntax>DeflateFilterNote <em>notename</em></syntax>
<contextlist><context>server config</context><context>virtual host</context>
</contextlist>

<usage>
    <p>The <directive>DeflateFilterNote</directive> directive
    specifies that a note about compression ratios should be attached
    to the request. The name of the note is the value specified for
    the directive.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>DeflateBufferSize</name>
<description>Fragment size to be compressed at one time by zlib</description>
<syntax>DeflateBufferSize <em>value</em></syntax>
<default>DeflateBufferSize 8096</default>
<contextlist><context>server config</context><context>virtual host</context>
</contextlist>

<usage>
    <p>The <directive>DeflateBufferSize</directive> directive specifies
    the size in bytes of the fragments that zlib should compress at one
    time.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>DeflateWindowSize</name>
<description>Zlib compression window size</description>
<syntax>DeflateWindowSize <em>value</em></syntax>
<default>DeflateWindowSize 15</default>
<contextlist><context>server config</context><context>virtual host</context>
</contextlist>

<usage>
    <p>The <directive>DeflateWindowSize</directive> directive specifies the
    zlib compression window size (a value between 1 and 15).</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>DeflateMemLevel</name>
<description>How much memory should be used by zlib for compression</description>
<syntax>DeflateMemLevel <em>value</em></syntax>
<default>DeflateMemLevel 9</default>
<contextlist><context>server config</context><context>virtual host</context>
</contextlist>

<usage>
    <p>The <directive>DeflateMemLevel</directive> directive specifies
    how much memory should be used by zlib for compression
    (a value between 1 and 9).</p>
</usage>
</directivesynopsis>

</modulesynopsis>

