SCGI: A Simple Common Gateway Interface alternative
===================================================

Protocol
--------

    See http://python.ca/nas/scgi/protocol.txt for the specification of
    the SCGI protocol.


Software
--------

    scgi
    ----

        A Python package implementing the server side of the SCGI
        protocol.


    mod_scgi
    --------

        An Apache 1.3 module that implements the client side of the
        protocol.  To enable it, add

            LoadModule scgi_module /<some path>/mod_scgi.so

        in your httpd.conf file.  Note that it is best to load mod_scgi
        after mod_rewrite (mod_rewrite needs a higher priority in order
        to rewrite URLs served by mod_scgi).  You can serve a set of
        URLs under one path using mod_scgi by using the Location
        directive:

            <Location "/dynamic">
                SCGIServer 127.0.0.1 4000
                SCGIHandler On
            </Location>

        Alternatively, if the URLs served by a single SCGI server are not
        under one path you can use the LocationMatch directive:

        <LocationMatch "^/(dynamic|login)($|/)">
            SCGIServer 127.0.0.1 4000
            SCGIHandler On
        </Location>

        You can also use multiple SCGI servers:

        <Location "/foo">
            SCGIServer 127.0.0.1 4000
            SCGIHandler On
        </Location>
        <Location "/bar">
            SCGIServer 127.0.0.1 4001
            SCGIHandler On
        </Location>

        If you have Quixote installed you can try out the demo
        application by running "./scgi/quixote_handler.py -F".  If you
        don't have Quixote, the scgi_server.py module implements a
        simple SCGI server that you can also run from the command line.

        Apache configuration note: the MultiViews option and an SCGI
        handler should not be enabled for the same directory, as this
        will prevent the SCGI handler from being called.  


    SCGI-CGI
    --------
    
        Available from http://arbutus.physics.mcmaster.ca/dmc/software/

        SCGI-CGI is a CGI script which communicates requests to a SCGI
        server.  This is useful in cases where you can't use the
        mod_scgi module.  It's much lighter weight than using a Python
        script for CGI, as it's written in C.  It is written by David M.
        Cooke.


/* vim: set ai tw=74 et sw=4 sts=4: */
