Installing and configuring standalone server
See also: HelpOnConfiguration/IntegratingWithApache
The standalone server is especially made for local wikis because it does not need a web server installed. Only Python and Moin are necessary!
To install and run the standalone server:
If MoinMoin is not installed yet, preform ../BasicInstallation
Create a wiki instance as described in ../WikiInstanceCreation
Copy moin.py to your wiki directory, where your wikiconfig.py is
If you installed with --prefix option, you must edit moin.py and set docs to the correct path.
Run moin.py
Access your wiki at http://localhost:8000/
On most cases, the default settings will be just fine. You many want to edit moin.py and change some of the options, as described in the next section.
Configuring moin.py
System path configuration
If you did a standard install, and you are not a developer, you probably want to skip this section. If not, you might want to add the path to moin and config file, like that:
import sys sys.path.insert(0, '/path/to/moin') sys.path.insert(0, '/path/to/wikiconfig')
Config class options
Option |
Default |
Comment |
name |
'moin' |
Server name, used by default for log and pid files. New in 1.5 |
docs |
'/usr/share/moin/wiki/htdocs' |
Path to moin shared files. If you used --prefix install, the default path will not work, and you must set the path to 'PREFIX/share/moin/wiki/htdocs'. |
user |
'www-data' |
If you run as root, the server will run with as this user |
group |
'www-data' |
If you run as root, the server will run with as this group |
port |
8000 |
Port to serve. To serve privileged port under 1024 you will have to run as root |
interface |
'localhost' |
The interface the server will listen to. The default will listen only to localhost. Set to '' to listen to all. |
logPath |
name + '.log' |
Log file. Default is commented. |
serverClass |
'ThreadPoolServer', 'ThreadingServer', 'ForkingServer', 'SimpleServer' |
The server type to use, see the comments in the moin.py. The default is 'ThreadPoolServer', which create a pool of threads and reuse them for new connections. New in 1.3.5 |
threadLimit |
10 |
How many threads to create. New in 1.3.5 |
requestQueueSize |
50 |
The count of socket connection requests that are buffered by the operating system. New in 1.3.5 |
properties |
{} |
allow overriding any request property by setting the value in this dict e.g properties = {'script_name': '/mywiki'}. New in 1.5 |
There may be more options useful to moin developers, see the comments in moin.py
Configuring wikiconfig.py
The sample config file should be just fine.
Option |
Default |
Comment |
url_prefix |
'/wiki' |
You should not change this, or images and css file will not be available to the wiki! |
Starting the server
Run moin.py from the command line:
$ ./moin.py Serving on localhost:8000
Test your wiki at http://localhost:8000/
On Windows, you can double click moin.py to start the server. A new terminal window will be opened. Close the window or press Control + Pause to stop the server.
On Unix, interrupt the server with Control + C in order to shut it down.
Serving port 80 on Unix
On GNU/Linux, Mac OS X or other Posix like OS, you can serve the standard port 80 used for web serving, but you must run as root for this.
Set port to 80, and verify that user and group exists on your system. If not, set them to an existing user, meant for web serving. If needed, chown your wiki dir to this user and group.
Run moin.py as root:
$ sudo moin.py Password: Serving on localhost:8000 Running as uid/gid 70/70
Test your wiki at http://localhost/
Running as daemon
If run on Unix, you can run moin.py as a background process:
Have a working moin.py as explained above
Copy the file prefix/share/moin/server/moin to your wiki directory.
- Start moin server:
./moin start
To stop the server:
./moin stop
For more info run moin with no arguments.
If you want to start moin from a system startup script, you may need to add the path to moin.py in the top of the script:
# Add the path to moin.py directory import sys sys.path.insert(0, '/path/to/moin')
New in release 1.5