NAME

Apache::Compress - Auto-compress web files with Gzip

SYNOPSIS

PerlModule Apache::Compress

# Compress regular files
<FilesMatch "\.blah$">
 PerlHandler Apache::Compress
</FilesMatch>

# Compress output of Perl scripts
PerlModule Apache::Filter
<FilesMatch "\.pl$">
 PerlSetVar Filter on
 PerlHandler Apache::RegistryFilter Apache::Compress
</FilesMatch>

DESCRIPTION

This module lets you send the content of an HTTP response as gzip-compressed data. Certain browsers (Netscape, IE) can request content compression via the Content-Encoding header. This can speed things up if you're sending large files to your users through slow connections.

Browsers that don't request gzipped data will receive regular noncompressed data.

This module is compatibile with Apache::Filter, so you can compress the output of other content-generators.

TO DO

Compress::Zlib provides a facility for buffering output until there's enough data for efficient compression. Currently we don't take advantage of this facility, we simply compress the whole content body at once. We could achieve better memory usage if we changed this (at a small cost to the compression ratio). See Eagle book, p.185.

AUTHOR

Ken Williams, ken@forum.swarthmore.edu

Partially based on the work of several modules, like Doug MacEachern's Apache::Gzip (in the Eagle book but not on CPAN), Andreas Koenig's Apache::GzipChain, and an unreleased module by Geoffrey Young and Philippe Chiasson.

SEE ALSO

perl(1), mod_perl(1), Apache::Filter(3)