Install MoinMoin wiki engine
Install MoinMoin wiki engine KCTangNote
MoinMoin wiki engine serves wiki web pages.
The following installation instructions are outdated. Check https://help.ubuntu.com/lts/serverguide/moinmoin.html for updated instructions.
Prepare
Install Apache2 web server if not already installed.
Download MoinMoin (filename moin-1.9.7.tar.gz) from https://moinmo.in/MoinMoinDownload, usually to own "Downloads" directory.
Use the file manager to extract the contents of the compressed file under the "Downloads" directory as "moin-1.9.7".
Install
Install MoinMoin:
$ cd /home/< own account name >/Downloads/moin-1.9.7 $ sudo python setup.py install --force --prefix /usr/local --record=install.log
Install "wsgi" module and test:
$ sudo apt-get install libapache2-mod-wsgi $ cd /usr/local/share/moin/server $ sudo python test.wsgi
Point the web browser to the address shown on the terminal, such as, https://localhost:8000/.
Setup wiki sites
Setup files for a wiki called "qswiki":
$ cd /usr/local/share/moin $ sudo mkdir qswiki $ sudo cp -R data qswiki $ sudo cp -R underlay qswiki $ sudo cp server/moin.wsgi qswiki $ sudo cp config/wikiconfig.py qswiki
Do similar for "dscwiki".
Configure Apache2 for MoinMoin site:
$ sudo gedit /etc/apache2/sites-available/moinmoin.conf
Specify, keeping "<" and ">" in the following codes:
# MoinMoin WSGI configuration
# invoke moin wiki at the root url, like https://servername/mywiki/FrontPage:
# servername can be www.kctang.com.hk or localhost
# qswiki and dscwiki use FrontScreen instead of FrontPage to avoid changes from being overridden when a new FrontPage is installed with new software
WSGIScriptAlias /qswiki   /usr/local/share/moin/qswiki/moin.wsgi
WSGIScriptAlias /dscwiki   /usr/local/share/moin/dscwiki/moin.wsgi
<Directory /usr/local/share/moin/qswiki>
    AllowOverride None
    Require all granted
</Directory>
<Directory /usr/local/share/moin/dscwiki>
     AllowOverride None
     Require all granted
</Directory>
# create some wsgi daemons - use these parameters for a simple setup
WSGIDaemonProcess moin user=www-data group=www-data processes=5 threads=10 maximum-requests=1000 umask=0007
# use the daemons we defined above to process requests!
WSGIProcessGroup moinEnable the site:
$ sudo a2ensite moinmoin
which will create a linked file in "/etc/apache2/sites-enabled"
If required to disable:
$ sudo a2dissite moinmoin
Configure wsgi:
$ sudo gedit /usr/local/share/moin/qswiki/moin.wsgi
Add at the end of the a2) paragraph:
sys.path.insert(0, '/usr/local/share/moin/qswiki')
Do the same for "dscwiki".
Enable web access, specify access rights and restart Apache2 service:
$ cd /usr/local/share $ sudo chown -R www-data:www-data moin $ sudo chmod -R ug+rwX moin $ sudo chmod -R o-rwx moin $ sudo systemctl restart apache2 or $ sudo service apache2 restart
Configure wiki:
$ sudo gedit /usr/local/share/moin/qswiki/wikiconfig.py
Specify:
# -*- coding: utf-8 -*-
## -*- coding: iso-8859-1 -*-
#url_prefix_static = '/mywiki' + url_prefix_static
url_prefix_static = '/qswiki' + url_prefix_static
# sitename = u'Untitled Wiki'
sitename = u'QS Wiki'
#page_front_page = u"FrontPage"
page_front_page = u"FrontScreen"
# superuser = [u"YourName", ]
#    (note: remove "#" at the front, and replace "YourName" with user id within quotation marks)
#acl_rights_before = u"YourName:read,write,delete,revert,admin"
#    (note: remove "#" at the front, and replace "YourName" with user id within quotation marks)
# the following added at the end of the Security section
textchas = {
    'en': {
        u"Please enter antispam password (email to kctang@kctang.com.hk for password):": ur"[password]",
        },
    }
textchas_disabled_group = u"TrustedGroup"
#    (note: replace [password] with actual password)
# end of addition
#mail_smarthost = ""
mail_smarthost = "kctang.com.hk"
# The return address, e.g u"Jgen Wiki <noreply@mywiki.org>" [Unicode]
#mail_from = u""
mail_from = u"K C Tang <kctang@kctang.com.hk>"
# "user pwd" if you need to use SMTP AUTH
#mail_login = ""
mail_login = u"kctang [email password]"
navi_bar = [
    # If you want to show your page_front_page here:
    #u'%(page_front_page)s',
    u'RecentChanges',
    u'FindPage',
    u'HelpContents',
    u'FrontScreen',
]
# The default theme anonymous or new users get
# theme_default = 'modernized'
theme_default = 'modernized_mobile'Note MoinMoin Config files are:
- /etc/apache2/sites-available/moinmoin.conf
 - /etc/apache2/sites-enabled/moinmoin.conf
 - /usr/local/share/moin/qswiki/moin.wsgi
 - /usr/local/share/moin/qswiki/wikiconfig.py
 - /usr/local/share/moin/dscwiki/moin.wsgi
 - /usr/local/share/moin/dscwiki/wikiconfig.py