welcome: please sign in

The following 238 words could not be found in the dictionary of 7 words (including 7 LocalSpellingWords) and are highlighted below:
above   absolute   add   Add   After   after   Alias   allows   also   and   any   Apache   apache   appears   append   are   as   aux   Basic   basic   be   before   below   building   called   can   case   cgi   change   Changes   check   code   comment   conf   config   configuratin   configuration   configurations   Configure   configure   configuring   consult   Contents   convert   Copy   correctly   create   Creation   css   current   daemon   Daemon   daemons   data   default   defined   definition   development   dir   directive   directory   display   documentation   done   easy   Edit   environment   error   everything   favicon   find   first   for   from   group   Group   have   Help   home   homepage   htdocs   http   httpd   ico   icons   ie   if   If   in   insert   Install   installation   installed   Installing   Instance   instance   instead   instructions   into   invoke   is   it   its   Its   js   just   later   library   line   Load   log   look   main   Make   make   match   maximum   maybe   mod   mode   module   Module   modules   modwsgi   Most   must   my   mywiki   name   need   nice   not   note   now   Of   On   only   operating   or   org   other   over   package   path   paths   people   please   Please   prefer   preferred   prefix   problems   process   Process   processes   ps   py   python   rather   reason   recommended   reflect   remove   requests   restart   Restart   robots   root   run   running   same   sample   Script   script   See   ser   server   servername   Set   share   should   shown   site   so   some   somegroup   someuser   source   starts   static170   successfully   sure   sys   system   Table   Test   test   than   that   The   the   their   then   these   This   this   threads   to   transition   txt   umask   under   underlay   up   url   use   user   usr   var   ver   versions   virtualhost   want   way   we   Why   wiki   Wiki   wikiconfig   will   with   work   works   wsgi   www   You   you   your  

Clear message
Page Locked

HelpOnInstalling / ApacheWithModWSGI

1. Why use mod_wsgi?

See the mod_wsgi homepage.

(!) Please note that its "daemon mode" should be the preferred way to use it (and this is the reason to prefer mod_wsgi over mod_python).

2. Basic configuring

  1. Install mod_wsgi
  2. Set up a wiki instance
  3. Edit wikiconfig.py

  4. Changes to Apache configuration
  5. Restart Apache

The sample configurations below are for a wiki instance called mywiki installed in a directory /var/www/moin/mywiki with the main MoinMoin installation installed in python's default site library path. The wiki appears as URL /mywiki under the server - ie http://my.ser.ver/mywiki. You will need to change these to reflect your installation.

2.1. Install mod_wsgi

Most people will just add a mod_wsgi package to their current operating system installation. If you are building from source then you should consult the mod_wsgi documentation (it is rather easy if you have a development environment installed).

Make sure you have this line in your apache configuration or mod_wsgi will not work:

LoadModule wsgi_module modules/mod_wsgi.so

After this restart Apache and make sure that it starts successfully (also check the the error log).

2.2. Set up a wiki instance

This is done as shown in WikiInstanceCreation. Its recommended to first configure the wiki with cgi and check that it works, then change the configuratin to use mod_wsgi. This allows you be sure that any problems are in the mod_wsgi transition rather than the basic MoinMoin installation.

  1. Copy moin.cgi into your wiki directory
  2. Configure httpd.conf as cgi first (Alias shown is for 1.7.0, for other versions please change it):

    • Alias /moin_static170/ "/usr/share/moin/htdocs/"
      ScriptAlias /mywiki "/var/www/moin/mywiki/moin.cgi"

Restart Apache and make test that your wiki works.

2.3. Edit `wikiconfig.py`

Make sure you use only absolute paths:

data_dir = '/var/www/moin/mywiki/data/'
data_underlay_dir = '/var/www/moin/mywiki/underlay/'

Test that the wiki works after this change.

2.4. Changes to Apache configuration

After your wiki is running as cgi script, convert it to run with mod_wsgi.

If you run your wiki as cgi as we recommended before, remove or comment the ScriptAlias directive:

#ScriptAlias /mywiki "/var/www/moin/mywiki/moin.cgi"

Add this to the same virtualhost definition (Alias shown is for 1.7.0, for other versions please change it):

    # this is for icons, css, js (and must match url_prefix from wiki config):
    Alias /moin_static170/ /usr/share/moin/htdocs/

    # this is the URL http://servername/mywiki/ you will use later to invoke moin:
    WSGIScriptAlias /mywiki /var/www/moin/mywiki/moin.wsgi

    # in case you want your wiki under the root url (http://servername/), use this instead:
    #Alias /robots.txt /usr/share/moin/htdocs/robots.txt
    #Alias /favicon.ico /usr/share/moin/htdocs/favicon.ico
    #WSGIScriptAlias / /var/www/moin/mywiki/moin.wsgi

    # create some wsgi daemons - use someuser.somegroup same as your data_dir:
    WSGIDaemonProcess moin user=someuser group=somegroup home=/home/someuser processes=5 threads=10 maximum-requests=1000 umask=0007
    # for mod_wsgi >= 2.0 you can append this to have a nice ps aux display:
    # display-name=wsgi-moin

    # use the daemons we defined above to process requests!
    WSGIProcessGroup moin

Please also have a look into moin.wsgi - you maybe have to change some sys.path.insert instructions so Python can find the MoinMoin code and the wiki configuration.

Restart Apache - everything should now work correctly.