NGINX Unit
v. 1.18.0

MoinMoin§

Warning

So far, Unit doesn’t support handling the REMOTE_USER headers directly, so authentication should be implemented via other means. For a full list of available authenticators, see here.

To install and run the MoinMoin wiki engine using Unit:

  1. Install Unit with a Python 2 language module.

    Note

    As of now, MoinMoin doesn’t fully support Python 3. Mind that Python 2 is officially deprecated.

  2. Download MoinMoin files, install the prerequisites, and configure ownership:

    $ mkdir -p /path/to/moin/ /tmp/moin/ && cd /tmp/moin/
    $ curl -O http://static.moinmo.in/files/moin-1.9.10.tar.gz
    $ tar xzf moin-1.9.10.tar.gz --strip-components 1 -C /path/to/moin/
    $ cd /path/to/moin/wiki/
    $ cp config/wikiconfig.py ./
    $ cp server/moin.wsgi ./moin.py
    # chown -R moin_user:moin_group /path/to/moin/
    
  3. Next, prepare and upload the configuration to Unit:

    {
        "listeners": {
            "*:80": {
                "pass": "applications/moin"
            }
        },
    
        "applications": {
            "moin": {
                "type": "python 2",
                "path": "/path/to/moin/wiki/",
                "user": "moin_user",
                "module": "moin"
            }
        }
    }
    

    Assuming the config is saved as moin.json:

    # curl -X PUT --data-binary @moin.json --unix-socket \
           /var/run/control.unit.sock http://localhost/config
    
    Moin on Unit - Welcome Screen