Please comment on the following draft ARC. 

------------------------------------------------------------------------------

Additional Apache2 Modules -- mod_wsgi and mod_sed

17 February 2009

1.    Summary and motivation

    1.1.    Introduction

    This project delivers Apache modules mod_wsgi and mod_sed to the
    Apache2 (PSARC/2007/586) in OpenSolaris.

    Modules allow Apache to integrate and provide functionality during
    runtime that were not available during compile time.

    1.1.1 mod_wsgi
    
    From modwsgi.org[1], "the aim of mod_wsgi is to implement a simple
    to use Apache module which can host any Python application which
    supports the Python WSGI interface. The module would be suitable
    for use in hosting high performance production web sites, as well
    as your average self managed personal sites running on web hosting
    services."

    1.1.2 mod_sed

    The module mod_sed provides Unix sed like functionality for
    modifying requests and responses to Apache HTTP server.  This is a
    Sun contributed module to apache.

    This project integrates the most recent stable releases of
    mod_wsgi[1] 2.3 and and mod_sed[2].

    This case seeks Minor Release Binding.

2.    Technical issues

    2.1.    Key objects

    2.1.1.1  mod_wsgi objects
    
    /usr/apache2/2.2/libexec/mod_wsgi.so
    /usr/apache2/2.2/libexec/${ISAINFO}/mod_wsgi.so

    2.1.2.1 mod_sed objects

    /usr/apache2/2.2/libexec/mod_sed.so
    /usr/apache2/2.2/libexec/${ISAINFO}/mod_sed.so

    
    2.2 Versioning

    mod_wsgi has a single active release while mod_sed is a backport
    from the trunk to the Apache 2.2.X release.

    It is not possible to query the modules to find out their
    versions.  The only way to do that is to look at the package
    description for the package including it.

    2.2 Directory Naming and Structure

    This project delivers the shared libraries of 32 bit and 64 bit
    into /usr/apache2/2.2/libexec and /usr/apache2/2.2/libexec/${ISAINFO}/ 
    directories of apache. This is in keeping with the approach taken
    by the Apache2 integration project for OpenSolaris (PSARC/2007/586).

3. Documentation

    The modules mod_wsgi and mod_sed do not install documentation into
    apache though they come with some documentation in their
    source. The recommended way to access their documentation is to
    look at their websites modwsgi.org[1] and mod_sed[2]. A list of
    external apache modules that have been added and their
    corresponding sites will be part of the release document.

4. Packaging and Delivery

    The module mod_wsgi will be delivered under the cluster
    SUNWCapch22m under the name SUNWapch22m-wsgi in keeping with the
    naming of other external Apache modules.

    The module mod_sed will be delivered under the cluster
    SUNWCapch22m under the name SUNWapch22m-sed in keeping with the
    naming of other external Apache modules.
   
5.  Interfaces

    5.1.    Interface Stability

    Both the modules are controlled by external organizations.
    The specific researches regarding stability of each module
    are captured below. It has to be mentioned that there is no
    guarantee that the organizations mentioned above will stick
    to these.

    5.1.1 mod_wsgi
    
    The mod_wsgi module implements the Web Server Gateway Interface
    (WSGI).  The complete list of directives are presented as Addendum
    1 with explanations provided at
    http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives.


    5.1.2 mod_sed
    The mod_sed is alpha, and is not stable.


    5.2.    Imported Interfaces

    These Apache modules imports interfaces from

    NAME                       STABILITY         NOTES
    ------------------------------------------------------------
    Apache2                    Uncommitted       PSARC/2007/586/   
    SUNWPython                 External          PSARC/2009/043


    5.3.    Exported Interfaces

    NAME                                                STABILITY
    --------------------------------------------------------------- 
    /usr/apache2/2.2/libexec/mod_wsgi.so                  Volatile
    /usr/apache2/2.2/libexec/${ISAINFO}/mod_wsgi.so       Volatile
    /usr/apache2/2.2/libexec/mod_sed.so                   Volatile
    /usr/apache2/2.2/libexec/${ISAINFO}/mod_sed.so        Volatile

    /etc/apache2/2.2/conf.d/wsgi.conf                     Volatile
    /etc/apache2/2.2/conf.d/sed.conf                      Volatile

    The API of mod_wsgi is attached
    as supporting materials for ARC case.                 Volatile

6.    Limitations
      None known at this time.

7.    References

   1. http://www.modwsgi.org/
   2. http://src.opensolaris.org/source/xref/webstack/mod_sed/
   3. http://src.opensolaris.org/source/xref/webstack/mod_sed/README   


==============================================================================

Addendum 1
----------
mod_wsgi interfaces:
Configuration Directives
    * WSGIScriptAlias
    * WSGIScriptAliasMatch
    * WSGIApplicationGroup
    * WSGIDaemonProcess
    * WSGISocketPrefix
    * WSGIProcessGroup
    * WSGIRestrictProcess
    * WSGIImportScript
    * WSGICallableObject
    * WSGIPassAuthorization
    * WSGIScriptReloading
    * WSGIReloadMechanism
    * WSGIOutputBuffering
    * WSGICaseSensitivity
    * WSGIPythonOptimize
    * WSGIPythonExecutable
    * WSGIPythonHome
    * WSGIPythonPath
    * WSGIPythonEggs
    * WSGIRestrictStdin
    * WSGIRestrictStdout
    * WSGIRestrictSignal
    * WSGIAcceptMutex 





Reply via email to