One of the most apealing aspects of The Apache HTTP Server[1] is its flexibility afforded to a large extent by its modular architecture. An excellent example of this is mod_rewrite which is part of the standard Apache distribition. mod_rewrite allows arbitary rewriting of requests received by Apache to other URLs at run time. The rewrite is done by a map and one of the map types supported is running an external programme.
mod_rewrite communicates with the external programme via
standard I/O. The external programme is run once when apache starts,
requests are written to the programme's standard in and results are
read from the programme's starndard out. The
supersparrow stand-alone application supports a batch mode,
which allows it to be used as a map for mod_rewrite. In this
way Apache may be tied directly to Super Sparrow to achieve the
semantics described in section 4.2.