Will these modules be loaded by default ?  Do you plan to provide the 
corresponding '.conf' files ?

- sriram

rahul wrote:
> Hi,
>     The *DRAFT* ARC case for mod_ruby and mod_python is below.
>
> Please do review.
>
>
> Additional Apache2 Modules mod_python and mod_ruby
>
> 11 March 2008
>
> 1.    Summary and motivation
>
>     1.1.    Introduction
>
>     This project delivers Apache modules mod_python and mod_ruby
>     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_python
>     From modpython.org[1] "mod_python is an Apache module that
>     embeds the Python interpreter within the server. With mod_python you can
>     write web-based applications in Python that will run many times faster
>     than traditional CGI and will have access to advanced features such as
>     ability to retain database connections and other data between hits and
>     access to Apache internals"
>
>     1.1.2 mod_ruby
>     From modruby.net[2] "mod_ruby embeds the Ruby interpreter into the
>     Apache web server, allowing Ruby CGI scripts to be executed natively.
>     These scripts will start up much faster than without mod_ruby."
>
>     This project integrates the most recent stable releases of
>     mod_python[1] 3.3.1 and mod_ruby[2] 1.2.6
>
>     This case seeks Minor Release Binding.
>
> 2.    Technical issues
>
>     2.1.    Key objects
>
>     2.1.1.1  mod_python Apache objects
>     /usr/apache2/2.2/libexec/mod_python.so
>
>     /usr/apache2/2.2/libexec/${ISAINFO}/mod_python.so
>
>     2.1.1.2  mod_python library objects
>
>     /usr/lib/python2.4/site-packages/mod_python/testhandler.py
>     /usr/lib/python2.4/site-packages/mod_python/Cookie.py
>     /usr/lib/python2.4/site-packages/mod_python/publisher.py
>     /usr/lib/python2.4/site-packages/mod_python/__init__.py
>     /usr/lib/python2.4/site-packages/mod_python/util.py
>     /usr/lib/python2.4/site-packages/mod_python/cgihandler.py
>     /usr/lib/python2.4/site-packages/mod_python/apache.py
>     /usr/lib/python2.4/site-packages/mod_python/importer.py
>     /usr/lib/python2.4/site-packages/mod_python/psp.py
>     /usr/lib/python2.4/site-packages/mod_python/Session.py
>     /usr/lib/python2.4/site-packages/mod_python/cache.py
>     /usr/lib/python2.4/site-packages/mod_python/python22.py
>     /usr/lib/python2.4/site-packages/mod_python/_psp.so
>     /usr/lib/python2.4/site-packages/mod_python/${ISAINFO}/_psp.so
>     /usr/lib/python2.4/site-packages/mod_python/testhandler.pyc
>     /usr/lib/python2.4/site-packages/mod_python/Cookie.pyc
>     /usr/lib/python2.4/site-packages/mod_python/publisher.pyc
>     /usr/lib/python2.4/site-packages/mod_python/__init__.pyc
>     /usr/lib/python2.4/site-packages/mod_python/util.pyc
>     /usr/lib/python2.4/site-packages/mod_python/cgihandler.pyc
>     /usr/lib/python2.4/site-packages/mod_python/apache.pyc
>     /usr/lib/python2.4/site-packages/mod_python/importer.pyc
>     /usr/lib/python2.4/site-packages/mod_python/psp.pyc
>     /usr/lib/python2.4/site-packages/mod_python/Session.pyc
>     /usr/lib/python2.4/site-packages/mod_python/cache.pyc
>     /usr/lib/python2.4/site-packages/mod_python/python22.pyc
>     /usr/lib/python2.4/site-packages/mod_python/testhandler.pyo
>     /usr/lib/python2.4/site-packages/mod_python/Cookie.pyo
>     /usr/lib/python2.4/site-packages/mod_python/publisher.pyo
>     /usr/lib/python2.4/site-packages/mod_python/__init__.pyo
>     /usr/lib/python2.4/site-packages/mod_python/util.pyo
>     /usr/lib/python2.4/site-packages/mod_python/cgihandler.pyo
>     /usr/lib/python2.4/site-packages/mod_python/apache.pyo
>     /usr/lib/python2.4/site-packages/mod_python/importer.pyo
>     /usr/lib/python2.4/site-packages/mod_python/psp.pyo
>     /usr/lib/python2.4/site-packages/mod_python/Session.pyo
>     /usr/lib/python2.4/site-packages/mod_python/cache.pyo
>     /usr/lib/python2.4/site-packages/mod_python/python22.pyo
>
>     2.1.2.1  mod_ruby Apache objects
>
>     /usr/apache2/2.2/libexec/mod_ruby.so
>     /usr/apache2/2.2/libexec/${ISAINFO}/mod_ruby.so
>     
>     2.1.2.2  mod_ruby library objects
>
>     /usr/ruby/1.8/lib/ruby/1.8/apache/ruby-run.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/registry.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/eruby-run.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/erb-run.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/rd2html.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/ruby-debug.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/eruby-debug.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/ruby-profile.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/rails-dispatcher.rb
>     /usr/ruby/1.8/lib/ruby/1.8/apache/query.rb
>
>     2.2 Versioning
>
>     mod_python and mod_ruby have a single active 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).
>
>     The scriping language libraries are made available under the
>     standard location for their respective languages.
>
> 3. Documentation
>
>     The modules mod_python and mod_ruby 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 modpython.org[1] and modruby.net[2]. A list of external apache
>     modules that has been added and their corresponding sites will be part
>     of the release document.
>
> 4. Packaging and Delivery
>
>     The modules will be split into two parts. One the apache part which
>     consists of modules loadable into apache, and another the scripting
>     library part.
>
>     The apache modules will be delivered under the cluster SUNWCapch22m.
>     This cluster will carry SUNWapch22m-python and SUNWapch22m-ruby.
>
>     The scripting library part of mod_python will be delivered under
>     SUNWPython-apache.
>
>     The scripting library part of mod_ruby will be delivered under 
>     SUNWruby18-apache.
>    
> 5.  Interfaces
>
>     5.1.    Interface Stability
>
>     The interface stability of both of these modules are Volatile as
>     these are controlled by external organisations over which Sun has
>     no control. The specific researches regarding stability of each
>     module are captured below.
>
>     5.1.1 mod_python
>     "X.Y.Z to X.Y.Z+n would generally aim to be compatible. X.Y to
>     X.Y+n or X to X+n probably aren't going to be compatible except for where
>     you are using possibly some core subset of mod_python functionality."
>     The complete list of directives are presented as Addendum 1. The
>     complete list of all directives APIs and their explanations as 
>     provided by modpython.org is available as modpython.pdf
>
>
>     5.1.2 mod_ruby
>        There were no commitments from mod_ruby developers in this
>     regard. The project has not had a release after 2006. The interface of
>     mod_ruby (its configuration options) is presented as Addendum 2. The
>     complete list of APIs and their explanation as provided by modruby.net
>     is available as mod_ruby_classes.en.rd and mod_ruby_directives.en.rd
>     (both are plain text files in ruby rdoc format.)
>
>     5.2.    Imported Interfaces
>
>     These Apache modules imports interfaces from
>
>     NAME                       STABILITY         NOTES
>     ------------------------------------------------------------
>     Apache2                    Uncommitted       PSARC/2007/586/   
>     SUNWPython                 External          PSARC/2005/532/
>     SUNWruby18u                Uncommitted       PSARC/2007/600/
>
>
>     5.3.    Exported Interfaces
>
>     NAME                                                STABILITY
>     --------------------------------------------------------------- 
>     /usr/apache2/2.2/libexec/mod_python.so                Volatile
>     /usr/apache2/2.2/libexec/mod_ruby.so                  Volatile
>     /usr/apache2/2.2/libexec/${ISAINFO}/mod_python.so     Volatile
>     /usr/apache2/2.2/libexec/${ISAINFO}/mod_ruby.so       Volatile
>
>     /usr/lib/python2.4/site-packages/mod_python/testhandler.py     Volatile
>     /usr/lib/python2.4/site-packages/mod_python/Cookie.py          Volatile
>     /usr/lib/python2.4/site-packages/mod_python/publisher.py       Volatile
>     /usr/lib/python2.4/site-packages/mod_python/__init__.py        Volatile
>     /usr/lib/python2.4/site-packages/mod_python/util.py            Volatile
>     /usr/lib/python2.4/site-packages/mod_python/cgihandler.py      Volatile
>     /usr/lib/python2.4/site-packages/mod_python/apache.py          Volatile
>     /usr/lib/python2.4/site-packages/mod_python/importer.py        Volatile
>     /usr/lib/python2.4/site-packages/mod_python/psp.py             Volatile
>     /usr/lib/python2.4/site-packages/mod_python/Session.py         Volatile
>     /usr/lib/python2.4/site-packages/mod_python/cache.py           Volatile
>     /usr/lib/python2.4/site-packages/mod_python/python22.py        Volatile
>     /usr/lib/python2.4/site-packages/mod_python/_psp.so            Volatile
>     /usr/lib/python2.4/site-packages/mod_python/${ISAINFO}/_psp.so Volatile
>     /usr/lib/python2.4/site-packages/mod_python/testhandler.pyc    Volatile
>     /usr/lib/python2.4/site-packages/mod_python/Cookie.pyc         Volatile
>     /usr/lib/python2.4/site-packages/mod_python/publisher.pyc      Volatile
>     /usr/lib/python2.4/site-packages/mod_python/__init__.pyc       Volatile
>     /usr/lib/python2.4/site-packages/mod_python/util.pyc           Volatile
>     /usr/lib/python2.4/site-packages/mod_python/cgihandler.pyc     Volatile
>     /usr/lib/python2.4/site-packages/mod_python/apache.pyc         Volatile
>     /usr/lib/python2.4/site-packages/mod_python/importer.pyc       Volatile
>     /usr/lib/python2.4/site-packages/mod_python/psp.pyc            Volatile
>     /usr/lib/python2.4/site-packages/mod_python/Session.pyc        Volatile
>     /usr/lib/python2.4/site-packages/mod_python/cache.pyc          Volatile
>     /usr/lib/python2.4/site-packages/mod_python/python22.pyc       Volatile
>     /usr/lib/python2.4/site-packages/mod_python/testhandler.pyo    Volatile
>     /usr/lib/python2.4/site-packages/mod_python/Cookie.pyo         Volatile
>     /usr/lib/python2.4/site-packages/mod_python/publisher.pyo      Volatile
>     /usr/lib/python2.4/site-packages/mod_python/__init__.pyo       Volatile
>     /usr/lib/python2.4/site-packages/mod_python/util.pyo           Volatile
>     /usr/lib/python2.4/site-packages/mod_python/cgihandler.pyo     Volatile
>     /usr/lib/python2.4/site-packages/mod_python/apache.pyo         Volatile
>     /usr/lib/python2.4/site-packages/mod_python/importer.pyo       Volatile
>     /usr/lib/python2.4/site-packages/mod_python/psp.pyo            Volatile
>     /usr/lib/python2.4/site-packages/mod_python/Session.pyo        Volatile
>     /usr/lib/python2.4/site-packages/mod_python/cache.pyo          Volatile
>     /usr/lib/python2.4/site-packages/mod_python/python22.pyo       Volatile
>
>     /usr/ruby/1.8/lib/ruby/1.8/apache/ruby-run.rb                  Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/registry.rb                  Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/eruby-run.rb                 Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/erb-run.rb                   Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/rd2html.rb                   Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/ruby-debug.rb                Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/eruby-debug.rb               Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/ruby-profile.rb              Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/rails-dispatcher.rb          Volatile
>     /usr/ruby/1.8/lib/ruby/1.8/apache/query.rb                     Volatile
>    
>
>
> 6.    References
>
>    1. http://www.modpython.org/
>    2. http://www.modruby.net/
>
>
> ==============================================================================
>
> Addendum 1
> ----------
> mod_python interfaces:
> Configuration Directives
>     Request Handlers 
>         PythonPostReadRequestHandler 
>         PythonTransHandler 
>         PythonHeaderParserHandler 
>         PythonInitHandler 
>         PythonAccessHandler 
>     PythonAuthenHandler 
>         PythonAuthzHandler 
>         PythonTypeHandler 
>         PythonFixupHandler 
>         PythonHandler 
>         PythonLogHandler 
>         PythonCleanupHandler 
>     Filters 
>         PythonInputFilter 
>         PythonOutputFilter 
>         Connection Handler 
>         PythonConnectionHandler 
>     Other Directives 
>         PythonEnablePdb 
>         PythonDebug 
>         PythonImport 
>         PythonInterpPerDirectory 
>         PythonInterpPerDirective 
>         PythonInterpreter 
>         PythonHandlerModule 
>         PythonAutoReload 
>         PythonOptimize 
>         PythonOption 
>         PythonPath
>
> ==============================================================================
>
> Addendum 2
> ----------
> mod_ruby interfaces:
>
> Configuration Directives
>     Request Handlers
>         RubyTransHandler
>         RubyAuthenHandler
>         RubyAuthzHandler
>         RubyAccessHandler
>         RubyTypeHandler
>         RubyFixupHandler
>         RubyLogHandler
>         RubyHeaderParserHandler
>         RubyPostReadRequestHandler
>         RubyInitHandler
>         RubyCleanupHandler
>    Other Directives 
>         RubyPassEnv
>         RubySetEnv
>         RubyTimeOut
>         RubySafeLevel
>         RubyOutputMode
>         RubyKanjiCode
>         RubyRestrictDirectives
>         RubyGcPerRequest
>
>
>
> (The modpython.pdf file and mod_ruby*.rd files are not attached.)
>
>
> _______________________________________________
>
>
> webstack-discuss mailing list
> webstack-discuss at opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/webstack-discuss
>   

Reply via email to