2008-08-29 22:56:34 +00:00
|
|
|
WELCOME TO MINIFY 2.0!
|
|
|
|
|
|
|
|
Minify is an HTTP content server. It compresses sources of content
|
|
|
|
(usually files), combines the result and serves it with appropriate
|
|
|
|
HTTP headers. These headers can allow clients to perform conditional
|
|
|
|
GETs (serving content only when clients do not have a valid cache)
|
|
|
|
or tell clients to cache the file until a given date/time.
|
|
|
|
More info: http://code.google.com/p/minify/
|
|
|
|
|
|
|
|
INSTALLATION AND USAGE: http://code.google.com/p/minify/wiki/UserGuide
|
|
|
|
|
|
|
|
UNIT TESTING & EXAMPLES: http://code.google.com/p/minify/wiki/TestingMinify
|
|
|
|
|
|
|
|
MINIFY OVERVIEW
|
|
|
|
|
|
|
|
Minify works with Minify_Source objects. These usually represent a file
|
|
|
|
on disk, but a source can also be a string in memory or from a database.
|
|
|
|
Sources with known "last modified" timestamps allow Minify to implement
|
|
|
|
server-side caching and conditional GETs.
|
|
|
|
|
|
|
|
You configure Minify via a Minify_Controller object. The controller
|
|
|
|
supplies the sources and default options to serve a request,
|
|
|
|
determining how it's to be responded to. Several controllers are
|
|
|
|
supplied with Minify, but it's also fairly easy to write your own. See
|
|
|
|
the files in /lib/Minify/Controller for examples.
|
|
|
|
|
|
|
|
To use an existing controller, you call Minify::serve(), passing it:
|
|
|
|
1. the name of your controller of choice (without the "Minify_Controller"
|
|
|
|
prefix) or a custom controller object subclassed from Minify_Controller_Base.
|
|
|
|
2. a combined array of controller and Minify options. Eg.:
|
|
|
|
|
|
|
|
// serve a minified javascript file and tell clients to cache it for a
|
|
|
|
// year
|
|
|
|
Minify::serve('Files', array(
|
|
|
|
'files' => array('/path/to/file1.js', '/path/to/file2.js')
|
|
|
|
,'setExpires' => (time() + 86400 * 365)
|
|
|
|
));
|
|
|
|
|
|
|
|
The above creates an instance of Minify_Controller_Files, which creates
|
|
|
|
source objects from the 'files' option, and supplies other default options.
|
|
|
|
|
|
|
|
FILE ENCODINGS
|
|
|
|
|
|
|
|
Minify *should* work fine with files encoded in UTF-8 or other 8-bit
|
|
|
|
encodings like ISO 8859/Windows-1252. Leading UTF-8 BOMs are stripped from
|
|
|
|
all sources to prevent duplication in output files.
|