Apache2::Filter::Minifier::CSS - CSS minifying output filter
<LocationMatch "\.css$"> PerlOutputFilterHandler Apache2::Filter::Minifier::CSS # if you need to supplement MIME-Type list PerlSetVar CssMimeType text/plain # if you want to explicitly specify the minifier to use #PerlSetVar CssMinifier CSS::Minifier::XS #PerlSetVar CssMinifier CSS::Minifier #PerlSetVar CssMinifier MY::Minifier::function </LocationMatch>
Apache2::Filter::Minifier::CSS is a Mod_perl2 output filter which minifies CSS using CSS::Minifier or CSS::Minifier::XS.
Apache2::Filter::Minifier::CSS
CSS::Minifier
CSS::Minifier::XS
Only CSS style-sheets are minified, all others are passed through unaltered. Apache2::Filter::Minifier::CSS comes with a list of known acceptable MIME-Types for CSS style-sheets, but you can supplement that list yourself by setting the CssMimeType PerlVar appropriately (use PerlSetVar for a single new MIME-Type, or PerlAddVar when you want to add multiple MIME-Types).
CssMimeType
PerlSetVar
PerlAddVar
Given a choice, using CSS::Minifier::XS is preferred over CSS::Minifier, but we'll use whichever one you've got available. If you want to explicitly specify which minifier you want to use, set the CssMinifier PerlVar to the name of the package/function that implements the minifier. Minification functions are expected to accept a single parameter (the CSS to be minified) and to return the minified CSS on completion. If you specify a package name, we look for a minify() function in that package.
CssMinifier
minify()
Minification does require additional CPU resources, and it is recommended that you use some sort of cache in order to keep this to a minimum.
Being that you're already running Apache2, though, here's some examples of a mod_cache setup:
Disk Cache
# Cache root directory CacheRoot /path/to/your/disk/cache # Enable cache for "/css/" location CacheEnable disk /css/
Memory Cache
# Cache size: 4 MBytes MCacheSize 4096 # Min object size: 128 Bytes MCacheMinObjectSize 128 # Max object size: 512 KBytes MCacheMaxObjectSize 524288 # Enable cache for "/css/" location CacheEnable mem /css/
CSS minification output filter.
Graham TerMarsch (cpan@howlingfrog.com)
Many thanks to Geoffrey Young for writing Apache::Clean, from which several things were lifted. :)
Apache::Clean
Copyright (C) 2007, Graham TerMarsch. All Rights Reserved.
This is free software; you can redistribute it and/or modify it under the same license as Perl itself.
CSS::Minifier, CSS::Minifier::XS, Apache2::Filter::Minifier::JavaScript, Apache::Clean.
To install Apache2::Filter::Minifier::CSS, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Apache2::Filter::Minifier::CSS
CPAN shell
perl -MCPAN -e shell install Apache2::Filter::Minifier::CSS
For more information on module installation, please visit the detailed CPAN module installation guide.