view docs/INSTALL.html @ 5106:fecbfc7f341d

twikidraw/anywikidraw: reduce code duplication, make code more similar
author Thomas Waldmann <tw AT waldmann-edv DOT de>
date Sun, 13 Sep 2009 17:47:59 +0200
parents 4ae10b1a4e20
children 12d27670e274
line wrap: on
line source
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<link rel="shortcut icon" href="http://static.moinmo.in/favicon.ico">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta name="robots" content="noindex,nofollow">

<title>InstallDocs - 1.9 Master Wiki</title>
<script type="text/javascript" src="/moin_static190/common/js/common.js"></script>


<link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="../MoinMoin/web/static/htdocs/modernized/css/common.css">
<link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="../MoinMoin/web/static/htdocs/modernized/css/print.css">

<!-- css only for MS IE6/IE7 browsers -->
<!--[if lt IE 8]>
   <link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="../MoinMoin/web/static/htdocs/modernized/css/msie.css">
<![endif]-->





<link rel="Start" href="http://master19.moinmo.in/FrontPage">
<link rel="Alternate" title="Wiki Markup" href="http://master19.moinmo.in/InstallDocs?action=raw">
<link rel="Alternate" media="print" title="Print View" href="http://master19.moinmo.in/InstallDocs?action=print">
<link rel="Search" href="http://master19.moinmo.in/FindPage">
<link rel="Index" href="http://master19.moinmo.in/TitleIndex">
<link rel="Glossary" href="http://master19.moinmo.in/WordIndex">
<link rel="Help" href="http://master19.moinmo.in/HelpOnFormatting">
</head>

<body  lang="en" dir="ltr">
<div id="page" lang="en" dir="ltr">
<span id="interwiki"><a href="http://master19.moinmo.in/FrontPage" rel="nofollow">MoinMaster</a><span class="sep">: </span></span><span id="pagelocation"><a class="backlink" href="http://master19.moinmo.in/4ct10n/fullsearch/InstallDocs?action=fullsearch&amp;context=180&amp;value=linkto%3A%22InstallDocs%22" rel="nofollow" title="Click to do a full-text search for this title">InstallDocs</a></span><div dir="ltr" id="content" lang="en"><span class="anchor" id="top"></span>
<span class="anchor" id="line-10"></span><span class="anchor" id="line-11"></span><p class="line867">
<h1 id="About_MoinMoin">About MoinMoin</h1>
<span class="anchor" id="line-12"></span><p class="line867">MoinMoin is a full-featured wiki engine (a wiki engine is software that enables you to run a wiki). <span class="anchor" id="line-13"></span><span class="anchor" id="line-14"></span><p class="line862">For a more detailed description, please see the <a class="http" href="http://moinmo.in/">MoinMoin Homepage</a> and the <a class="http" href="http://moinmo.in/HowTo">HowTos</a>. <span class="anchor" id="line-15"></span><span class="anchor" id="line-16"></span><p class="line874">Skip to: <span class="anchor" id="line-17"></span><ul><li><p class="line891"><a href="http://master19.moinmo.in/InstallDocs#requirements">Installation Requirements</a> <span class="anchor" id="line-18"></span></li><li><p class="line891"><a href="http://master19.moinmo.in/InstallDocs#quick">Quick Installation (easy, no admin knowledge required)</a> <span class="anchor" id="line-19"></span></li><li><p class="line891"><a href="http://master19.moinmo.in/InstallDocs#server">Server Installation (admin knowledge required)</a> <span class="anchor" id="line-20"></span><span class="anchor" id="line-21"></span></li></ul><p class="line867"><hr /><p class="line874"> <span class="anchor" id="line-22"></span><span class="anchor" id="line-23"></span><p class="line867"><span class="anchor" id="requirements"></span> <span class="anchor" id="line-24"></span><div dir="ltr" id="InstallDocs.2BAC8-Requirements.content" lang="en"><span class="anchor" id="InstallDocs.2BAC8-Requirements.top"></span>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-10"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-11"></span><p class="line867">
<h1 id="InstallDocs.2BAC8-Requirements.Installation_Requirements">Installation Requirements</h1>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-12"></span><p class="line862">Before you start installing MoinMoin, some requirements have to be met. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-13"></span>The actual requirements depend largely on what kind of setup you plan <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-14"></span>for your wiki installation. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-15"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-16"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-Requirements.What_do_you_need_to_know.3F">What do you need to know?</h2>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-17"></span><p class="line862">There are two major ways of using MoinMoin, requiring <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-18"></span>different knowledge about the environment it is going to be installed in (e.g. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-19"></span>operating system, server software, etc.): <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-20"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-21"></span><ul><li>Quick installation: <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-22"></span><ul><li>A likely scenario for personal use on a PC or Notebook <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-23"></span></li><li><p class="line891"><img alt="(!)" height="16" src="/moin_static190/modernized/img/idea.png" title="(!)" width="16" /> No knowledge about administration of servers is required <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-24"></span></li><li>You should be familiar with your chosen operating system <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-25"></span></li></ul></li><li>Server installation: <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-26"></span><ul><li>General server administration knowledge is required <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-27"></span></li><li>You have to know about web server configuration <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-28"></span></li><li>You have to know about permissions, users, groups and the like <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-29"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-30"></span></li></ul></li></ul><p class="line867"><img alt="(!)" height="16" src="/moin_static190/modernized/img/idea.png" title="(!)" width="16" /> Please note, that there are <a class="interwiki" href="http://moinmo.in/ServiceProviders" title="MoinMoin">service providers</a> who offer hosted, pre-configured MoinMoin installations. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-31"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-32"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-Requirements.What_software_do_you_need_to_have_installed.3F">What software do you need to have installed?</h2>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-33"></span><p class="line862">The software that has to be installed on the target machine, also largely depends on the type of deployment AND on the features you want to make use of. While the largest amount of functionality in MoinMoin works with a minimal set of requirements, some features can only be activated in the presence of additional software: <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-34"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-35"></span><p class="line867">
<h3 id="InstallDocs.2BAC8-Requirements.Required_software">Required software</h3>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-36"></span><p class="line867">
<h4 id="InstallDocs.2BAC8-Requirements.All_installations">All installations</h4>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-37"></span><p class="line862">As MoinMoin is written in Python, you need <strong>Python</strong>! <img alt=":)" height="16" src="/moin_static190/modernized/img/smile.png" title=":)" width="16" /> <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-38"></span><ul><li>We recommend using Python 2.4.x or 2.5.x, if possible. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-39"></span></li><li>Python 2.6.x should also work, but is less tested. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-40"></span></li><li><p class="line891"><img alt="/!\" height="16" src="/moin_static190/modernized/img/alert.png" title="/!\" width="16" /> Python 3.x (or Python older than 2.4) will <strong>not</strong> work for MoinMoin. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-41"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-42"></span></li></ul><p class="line867">
<h4 id="InstallDocs.2BAC8-Requirements.Quick_Installation">Quick Installation</h4>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-43"></span><p class="line874">No web server is required (the wiki runs on a builtin server). <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-44"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-45"></span><p class="line867">
<h4 id="InstallDocs.2BAC8-Requirements.Server_Installation">Server Installation</h4>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-46"></span><ul><li>A webserver of your choice, for example: <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-47"></span><ul><li><p class="line891"><a class="http" href="http://httpd.apache.org">Apache</a> <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-48"></span></li><li><p class="line891"><a class="http" href="http://www.lighttpd.net">lighttpd</a> <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-49"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-50"></span></li></ul></li><li class="gap">A web server protocol extension to speed up the serving of the wiki: <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-51"></span><ul><li><p class="line891"><strong>WSGI</strong>: very fast and standardized protocol for serving Python web apps (<strong>strongly recommended</strong>), available for <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-52"></span><ul><li><p class="line862">Apache (<a class="http" href="http://www.modwsgi.org">mod_wsgi</a>) <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-53"></span></li></ul><p class="line891"><img alt="(!)" height="16" src="/moin_static190/modernized/img/idea.png" title="(!)" width="16" /> MoinMoin is a WSGI application, thus using a WSGI web server is the most direct way to run MoinMoin. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-54"></span></li><li><p class="line891"><strong>FastCGI</strong>: also quite fast, available for <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-55"></span><ul><li><p class="line862">Apache (either <a class="http" href="http://www.fastcgi.com">mod_fastcgi</a> or <a class="http" href="http://fastcgi.coremail.cn">mod_fcgid</a>), <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-56"></span></li><li>lighttpd (builtin), <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-57"></span></li><li>and a lot of other web servers. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-58"></span></li></ul></li><li><p class="line891"><strong>SCGI</strong>: similar to FastCGI, available for <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-59"></span><ul><li><p class="line862">Apache (<a class="http" href="http://www.mems-exchange.org/software/scgi">mod_scgi</a>) or <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-60"></span></li><li>lighttpd (builtin) <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-61"></span></li></ul></li><li><p class="line891"><strong>AJP</strong>: another fast exchange protocol, mostly found in setups involving also an Apache Tomcat Java server. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-62"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-63"></span></li></ul></li><li class="gap"><p class="line862">In the absence of such a protocol extension, you can always run MoinMoin as a <strong>CGI script</strong>, but keep in mind, that: <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-64"></span><ul><li><p class="line862">CGI is <em>very slow</em> <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-65"></span></li><li>and perhaps unsuited for larger public wikis. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-66"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-67"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-68"></span></li></ul></li></ul><p class="line867">
<h3 id="InstallDocs.2BAC8-Requirements.Optional_services">Optional services</h3>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-69"></span><p class="line874">Optional you may need the following configured services to make use of extended features of your wiki: <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-70"></span><ul><li><p class="line891"><strong>SMTP mail server</strong>: (or working sendmail command) for sending out email notifications <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-71"></span></li><li><p class="line891"><strong>Jabber server</strong>: for notifications via Jabber/XMPP <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-72"></span></li><li><p class="line891"><strong>procmail</strong>-like mechanism: for importing emails into the wiki <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-73"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-74"></span><span class="anchor" id="InstallDocs.2BAC8-Requirements.line-75"></span></li></ul><p class="line867">
<h3 id="InstallDocs.2BAC8-Requirements.Optional_software">Optional software</h3>
<span class="anchor" id="InstallDocs.2BAC8-Requirements.line-76"></span><p class="line874">Following is a list of software required for special features: <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-77"></span><ul><li><p class="line891"><strong>xapian libs</strong> with <strong>python bindings</strong>: Xapian indexed search <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-78"></span><ul><li><p class="line891"><strong>antiword, catdoc</strong>: indexing MS word/excel documents <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-79"></span></li><li><p class="line891"><strong>xpdf-utils</strong>: indexing PDF files <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-80"></span></li></ul></li><li><p class="line891"><strong>python-xml</strong> (PyXML): gui editor, docbook <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-81"></span><ul><li>if you use Python 2.5.1 or newer, you don't need to install python-xml. <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-82"></span></li></ul></li><li><p class="line891"><strong>docutils</strong>: parsing reStructuredText wiki pages <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-83"></span></li><li><p class="line891"><strong>gdchart</strong>: nice charts for statistics <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-84"></span></li><li><p class="line891"><strong>openid libs</strong>: authentication with OpenID <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-85"></span></li><li><p class="line891"><strong>python-ldap</strong>: authentication against a LDAP directory <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-86"></span></li><li><p class="line891"><strong>MySQLdb</strong>: authentication against a MySQL database <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-87"></span></li><li><p class="line891"><strong>docbook xslt files</strong>: parsing docbook wiki pages <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-88"></span></li><li><p class="line891"><strong>4suite</strong>: needed for extended XML/XSLT parsing <span class="anchor" id="InstallDocs.2BAC8-Requirements.line-89"></span></li></ul><span class="anchor" id="InstallDocs.2BAC8-Requirements.bottom"></span></div> <span class="anchor" id="line-25"></span><hr /><p class="line874"> <span class="anchor" id="line-26"></span><span class="anchor" id="line-27"></span><p class="line867"><span class="anchor" id="quick"></span> <span class="anchor" id="line-28"></span><div dir="ltr" id="InstallDocs.2BAC8-QuickInstall.content" lang="en"><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.top"></span>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-10"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-11"></span><p class="line867">
<h1 id="InstallDocs.2BAC8-QuickInstall.Quick_Installation:_The_1_minute_MoinMoin_install">Quick Installation: The 1 minute MoinMoin install</h1>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-12"></span><ul><li><p class="line862">Unpack the MoinMoin release archive (get it from <a class="interwiki" href="http://moinmo.in/MoinMoinDownload" title="MoinMoin">MoinMoinDownload</a>). <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-13"></span></li><li>Run wikiserver.py from the top level directory. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-14"></span></li><li><p class="line862">Point your browser at <a class="http" href="http://localhost:8080/">http://localhost:8080/</a> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-15"></span></li><li><p class="line862">You are done! Have fun! <img alt=":)" height="16" src="/moin_static190/modernized/img/smile.png" title=":)" width="16" /> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-16"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-17"></span></li></ul><p class="line874">If these steps were not verbose enough for you, you can try one of these more detailed instructions: <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-18"></span><ul><li><p class="line891"><a href="http://master19.moinmo.in/InstallDocs/QuickInstall#qdlinux">Skip to Linux</a> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-19"></span></li><li><p class="line891"><a href="http://master19.moinmo.in/InstallDocs/QuickInstall#qdmac">Skip to Mac OS X</a> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-20"></span></li><li><p class="line891"><a href="http://master19.moinmo.in/InstallDocs/QuickInstall#qdwindows">Skip to Windows</a> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-21"></span></li></ul><p class="line867"><hr /><p class="line874"> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-22"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-23"></span><p class="line867"><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.qdlinux"></span> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-24"></span><div dir="ltr" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.content" lang="en"><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.top"></span>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-10"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-11"></span><p class="line867">
<h1 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.Linux:_Detailed_Quick_Installation">Linux: Detailed Quick Installation</h1>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-12"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-13"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.Download_MoinMoin">Download MoinMoin</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-14"></span><p class="line862">Please read the <a class="interwiki" href="http://moinmo.in/MoinMoinDownload" title="MoinMoin">MoinMoinDownload</a> wiki page to find and download the latest MoinMoin release version. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-15"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-16"></span><p class="line867"><img alt="(!)" height="16" src="/moin_static190/modernized/img/idea.png" title="(!)" width="16" /> Please remember the path where you saved that download and also its exact filename. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-17"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-18"></span><p class="line862">The filename will likely be something like <tt class="backtick">moin-1.9.0.tar.gz</tt> (for moin version 1.9.0), but we will just talk of moin-x.x.x because the concrete version number changes often. You have to use the real version number in the commands you enter, not x.x.x, of course. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-19"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-20"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.Working_on_the_shell">Working on the shell</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-21"></span><p class="line874">For the next steps, we will work on a shell prompt (for sure you can also do all the steps using some GUI tool of your favourite desktop environment, but because of the diversity of those environments, you will have to find out the right tools yourself using these steps as a guideline). <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-22"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-23"></span><p class="line867"><img alt="(!)" height="16" src="/moin_static190/modernized/img/idea.png" title="(!)" width="16" /> If you use some graphical desktop environment or some X Window Manager, you will first have to find a terminal window (usually called "Terminal", "XTerm", "shell", "bash", "Command line window" or similar) and start it. If you see something showing a $ and a blinking cursor to the right of it, it worked. We shall also refer to this window as the "shell". <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-24"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-25"></span><p class="line867"><img alt="/!\" height="16" src="/moin_static190/modernized/img/alert.png" title="/!\" width="16" /> Note that you <strong>must not</strong> use a "root shell" for this type of installation. Just use a shell as the non-priviledged user you usually log in as. You can use the <tt class="backtick">id</tt> command to display what user you are and it must not display "root". <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-26"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-27"></span><p class="line862">For the next steps, we assume you have downloaded the moin archive into your home directory and that the current directory is your home directory (that's the default when you start a shell, usually indicated by a shell prompt showing <tt class="backtick">~$</tt> - the tilde means you are in your home directory and the dollar means that you can enter a command to the right of it). <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-28"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-29"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.Verify_the_integrity_of_your_downloaded_file">Verify the integrity of your downloaded file</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-30"></span><p class="line874">Make sure the archive downloaded correctly by verifying the md5sum (a checksum) of the archive: <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-31"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-32"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-33"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-34"></span><pre>$ md5sum moin-x.x.x.tar.gz
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  moin-x.x.x.tar.gz</pre><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-35"></span><p class="line874">The value (XXX...) md5sum shown left of the filename must match the value published on the download page for the file you just downloaded! <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-36"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-37"></span><p class="line867"><img alt="/!\" height="16" src="/moin_static190/modernized/img/alert.png" title="/!\" width="16" /> If it does not match, your download is corrupted somehow. Remove the file and try downloading it again. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-38"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-39"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.Unpack_MoinMoin">Unpack MoinMoin</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-40"></span><p class="line874">We use a gzipped tar archive for our release archives - you need to unpack it before using. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-41"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-42"></span><p class="line874">Unpack it using this command on the shell: <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-43"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-44"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-45"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-46"></span><pre>$ tar xvzf moin-x.x.x.tar.gz
(it will show a long list of all files it has unpacked)</pre><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-47"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-48"></span><p class="line862">This will create a directory <tt class="backtick">moin-x.x.x</tt> in the current directory with all the MoinMoin release files in it. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-49"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-50"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.Run_MoinMoin">Run MoinMoin</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-51"></span><p class="line867">MoinMoin is written using the Python programming language so you need to start it using the python interpreter: <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-52"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-53"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-54"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-55"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-56"></span><pre>$ cd moin-x.x.x
$ python wikiserver.py
(you will see the log output of the running MoinMoin server here)</pre><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-57"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-58"></span><p class="line862">After MoinMoin has started, it will show some log output in your terminal window. Within that logging output, it will also announce on which IP address and port the server runs (e.g. <a class="http" href="http://127.0.0.1:8080">http://127.0.0.1:8080</a>). <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-59"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-60"></span><p class="line862">Now just leave that terminal window as it is and the builtin web server of MoinMoin will work as long as you don't stop it. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-61"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-62"></span><p class="line862">You can stop the server by closing that terminal window or by pressing <tt class="backtick">Ctrl-C</tt> to interrupt it. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-63"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-64"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.Use_MoinMoin">Use MoinMoin</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-65"></span><p class="line862">Just point your web browser at the address you got from the terminal window (e.g.: <a class="http" href="http://127.0.0.1:8080/">http://127.0.0.1:8080/</a> or <a class="http" href="http://localhost:8080/">http://localhost:8080/</a> ). <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-66"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-67"></span><p class="line874">You should now see your fresh moin wiki in your browser. Maybe bookmark that address so you don't have to enter it manually each time you want to use your wiki. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-68"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-69"></span><p class="line862">Your wiki is now ready to use. Have fun! <img alt=":)" height="16" src="/moin_static190/modernized/img/smile.png" title=":)" width="16" /> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.line-70"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Linux.bottom"></span></div> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-25"></span><hr /><p class="line874"> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-26"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-27"></span><p class="line867"><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.qdmac"></span> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-28"></span><div dir="ltr" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.content" lang="en"><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.top"></span>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-10"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-11"></span><p class="line867">
<h1 id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.Mac:_Detailed_Quick_Installation">Mac: Detailed Quick Installation</h1>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-12"></span><p class="line862">Apple's Mac operating system comes with Python already installed as a part of the core system software making running a MoinMoin wiki very easy. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-13"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-14"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.Download_MoinMoin">Download MoinMoin</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-15"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-16"></span><ol type="1"><li><p class="line862">Download the latest Moin from <a class="interwiki" href="http://moinmo.in/MoinMoinDownload" title="MoinMoin">MoinMoinDownload</a> page. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-17"></span></li><li>Double-click to expand. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-18"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-19"></span></li></ol><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.Starting_Moin_for_the_first_time">Starting Moin for the first time</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-20"></span><p class="line862">By default, python scripts (.py) will open in TextEdit.app. For convenience, we'll want to associate .py files to open in Terminal.app so that we can simply double-click the <tt>wikiserver.py</tt> file to run Moin. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-21"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-22"></span><ol type="1"><li><p class="line862">Right-click (control-click) on the <tt>wikiserver.py</tt> file. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-23"></span></li><li>From the contextual-menu, <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-24"></span><ol type="i"><li><p class="line862">Select "Open with..." &gt; "Other..."; <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-25"></span></li><li><p class="line862">From the file dialog, select "All Applications", check "Always Open With", then navigate to Terminal.app (located in //Applications/Utilites/). <br>
 (The "Always open with" sets Terminal.app as the default application so in future you can double-click the <tt>wikiserver.py</tt> file). <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-26"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-27"></span></li></ol></li></ol><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.Daily_Use">Daily Use</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-28"></span><ol type="i"><li>Double-click on the wikiserver.py file and Terminal.app will launch. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-29"></span></li><li><p class="line862">Point your browser at <a class="http" href="http://localhost:8080">http://localhost:8080</a> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-30"></span></li><li>To quit the wiki, simply close the terminal window. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.line-31"></span></li></ol><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-MacOSX.bottom"></span></div> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-29"></span><hr /><p class="line874"> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-30"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-31"></span><p class="line867"><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.qdwindows"></span> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-32"></span><div dir="ltr" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.content" lang="en"><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.top"></span>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-10"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-11"></span><p class="line867">
<h1 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.Windows:__Detailed_Quick_Installation">Windows:  Detailed Quick Installation</h1>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-12"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-13"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.Download_.26_Install_Python">Download &amp; Install Python</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-14"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-15"></span><p class="line867">MoinMoin relies on Python which requires a separate install on Windows. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-16"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-17"></span><ul><li><p class="line862">Go to <a class="http" href="http://www.python.org/download/">http://www.python.org/download/</a> and download the Python installer. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-18"></span></li><li>Run it! <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-19"></span><ul><li>If you want to save some space, you can unselect all but the first two options. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-20"></span></li><li>The installer will automatically associate .py files with Python. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-21"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-22"></span></li></ul></li></ul><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.Download_.26_Expand_.21MoinMoin">Download &amp; Expand !MoinMoin</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-23"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-24"></span><ol type="1"><li><p class="line862">Download the latest MoinMoin from the <a class="interwiki" href="http://moinmo.in/MoinMoinDownload" title="MoinMoin">MoinMoinDownload</a> page. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-25"></span></li><li><p class="line862">Extract the files to a folder using <a class="http" href="http://www.7-zip.org">7-zip</a> or similar. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-26"></span></li><li><p class="line862">Simply double-click <tt>wikiserver.py</tt> which you will find in this folder. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-27"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-28"></span></li></ol><p class="line867">
<h2 id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.Daily_Use">Daily Use</h2>
<span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-29"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-30"></span><ol type="i"><li><p class="line862">Double-click on the <tt>wikiserver.py</tt> file and a black command window will open. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-31"></span></li><li><p class="line862">Point your browser to <a class="http" href="http://localhost:8080/">http://localhost:8080/</a>. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-32"></span></li><li>To quit the wiki, simply close the command window. <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.line-33"></span></li></ol><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.2BAC8-Windows.bottom"></span></div> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-33"></span><hr /><p class="line874"> <span class="anchor" id="InstallDocs.2BAC8-QuickInstall.line-34"></span><span class="anchor" id="InstallDocs.2BAC8-QuickInstall.bottom"></span></div> <span class="anchor" id="line-29"></span><hr /><p class="line874"> <span class="anchor" id="line-30"></span><span class="anchor" id="line-31"></span><p class="line867"><span class="anchor" id="server"></span> <span class="anchor" id="line-32"></span><div dir="ltr" id="InstallDocs.2BAC8-ServerInstall.content" lang="en"><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.top"></span>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-10"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-11"></span><p class="line867">
<h1 id="InstallDocs.2BAC8-ServerInstall.Server_Installation">Server Installation</h1>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-12"></span><p class="line862">How to setup MoinMoin for various webservers / gateway interfaces. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-13"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-14"></span><p class="line867"><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-15"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-16"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-17"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-18"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-19"></span><div class="important"><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-1"></span><p class="line874">Please note that you require server admin experience for a server installation. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-2"></span>It is not in the scope of this documentation to teach you (web) server configuration, <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-3"></span>but just to show you how MoinMoin is installed. If you are unsure about your experience <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-4"></span>level, please try the Quick Installation first.  </div><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-20"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-21"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-22"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-ServerInstall.MoinMoin_and_WSGI">MoinMoin and WSGI</h2>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-23"></span><p class="line867">MoinMoin is a <a class="http" href="http://wsgi.org/">WSGI</a> application, therefore the best environment to run a MoinMoin <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-24"></span>instance in is a WSGI-aware one. Here are some of them: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-25"></span><ul><li><p class="line891"><strong><a class="http" href="http://httpd.apache.org">Apache</a></strong> with <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-26"></span><strong><a class="http" href="http://code.google.com/p/modwsgi">mod_wsgi</a></strong>: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-27"></span>This is the recommended deployment when using Apache. It is very fast and easy to setup. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-28"></span></li><li><p class="line891"><strong>standalone server</strong> shipped with MoinMoin: reasonably fast, <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-29"></span>also used for the <a href="http://master19.moinmo.in/InstallDocs/QuickInstall">Quick Installation</a> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-30"></span></li><li><p class="line862">More WSGI server options can be found there: <a class="http" href="http://wiki.python.org/moin/WSGIImplementations">http://wiki.python.org/moin/WSGIImplementations</a> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-31"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-32"></span></li></ul><p class="line862">Also we will cover some legacy deployment methods for serving MoinMoin <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-33"></span>from non-WSGI-aware setups. The needed adapters are included in the MoinMoin <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-34"></span>distribution. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-35"></span><ul><li><p class="line891"><strong>CGI</strong>: the classic protocol for web application serving - awfully slow but <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-36"></span>works (almost) everywhere. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-37"></span></li><li><p class="line891"><strong>FastCGI</strong> / <strong>SCGI</strong> / <strong>AJP</strong>: fast, and in the case of FastCGI, quite <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-38"></span>widespread. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-39"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-40"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-41"></span></li></ul><p class="line867">
<h2 id="InstallDocs.2BAC8-ServerInstall.Apache_with_mod_wsgi">Apache with mod_wsgi</h2>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-42"></span><p class="line862">We won't go into the details of how to install <strong>mod_wsgi</strong> or <strong>Apache</strong>. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-43"></span>Follow these <a class="http" href="http://code.google.com/p/modwsgi/wiki/ConfigurationGuidelines">instructions</a> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-44"></span>to setup <strong>mod_wsgi</strong>. If everything has been configured to your liking, <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-45"></span>you can test your setup with the application contained in <tt class="backtick">test.wsgi</tt> (please read the hints <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-46"></span>included in the file). <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-47"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-48"></span><p class="line874">Some further hints for usage of mod_wsgi: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-49"></span><ul><li><p class="line862">If possible, use mod_wsgi's <em>daemon mode</em> (not the <em>embedded mode</em>). <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-50"></span>This can prove more secure since it seperates the WSGI apps from the actual Apache process. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-51"></span></li><li><p class="line862">If you use Windows, there is no <em>daemon mode</em>, thus you have no other choice than to use <em>embedded mode</em>. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-52"></span></li><li><p class="line862">If you use Debian Etch, there is a <tt class="backtick">mod_wsgi</tt> backport available on <a class="http" href="http://backports.org/">http://backports.org/</a>. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-53"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-54"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-55"></span></li></ul><p class="line867">
<h2 id="InstallDocs.2BAC8-ServerInstall.MoinMoin_specific_installation">MoinMoin specific installation</h2>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-56"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-57"></span><p class="line867">
<h3 id="InstallDocs.2BAC8-ServerInstall.MoinMoin_installation">MoinMoin installation</h3>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-58"></span><p class="line862">You may, but <strong>you do not need to</strong>, install MoinMoin to system specific locations <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-59"></span>via the use of <tt class="backtick">setup.py</tt>. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-60"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-61"></span><p class="line867"><img alt="(!)" height="16" src="/moin_static190/modernized/img/idea.png" title="(!)" width="16" /> You can place the MoinMoin package (a directory called <tt class="backtick">MoinMoin/</tt> containing most of the code) <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-62"></span>anywhere you like, no specific location in the filesystem is required. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-63"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-64"></span><p class="line862">If you choose to use <tt class="backtick">setup.py</tt>, you can install MoinMoin using: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-65"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-66"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-67"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-68"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-69"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-70"></span><pre>python setup.py install --force --record=install.log --prefix='/usr/local' --install-data=/srv
# or alternatively, to the default system location:
python setup.py install --force --record=install.log
# --force is important, without it setup.py might not overwrite outdated files at the destination</pre><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-71"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-72"></span><p class="line862">With <tt class="backtick">--install-data=/path</tt> you could change the prefix of the wiki instance directory (<tt class="backtick">share/moin</tt>) to <tt class="backtick">/path</tt>.  <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-73"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-74"></span><p class="line867"><img alt="/!\" height="16" src="/moin_static190/modernized/img/alert.png" title="/!\" width="16" /> Please note that using <tt class="backtick">setup.py</tt> as shown above will overwrite all files at the destination. So if you modified files there, your modifications will be lost. However it won't remove outdated files there so if you had used <tt class="backtick">setup.py</tt> before for the same destination, maybe clean up at the destination before installing a new moin version. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-75"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-76"></span><p class="line867"><img alt="(!)" height="16" src="/moin_static190/modernized/img/idea.png" title="(!)" width="16" /> If you need to modify files, do not do so in their original location, but copy them to some safe place first and then edit them there. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-77"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-78"></span><p class="line862">The file <tt class="backtick">install.log</tt> will contain a complete log of installed files. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-79"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-80"></span><p class="line874">You may want to keep it in case you have trouble locating some of the file(s) mentioned below. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-81"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-82"></span><p class="line867">
<h3 id="InstallDocs.2BAC8-ServerInstall.Python_path_setup">Python path setup</h3>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-83"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-84"></span><p class="line862">Code: From here on we will use <tt class="backtick">/moin/code</tt> to refer to the <em>parent directory</em> of the <tt class="backtick">MoinMoin/</tt> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-85"></span>package directory. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-86"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-87"></span><p class="line874">Config: You can place the wiki config files (they are just Python code) anywhere you <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-88"></span>like, no specific location is required. We will use <tt class="backtick">/moin/config</tt> to refer to the directory <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-89"></span>that contains your wiki config files. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-90"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-91"></span><p class="line862">To make MoinMoin and Python find the needed files, you need to make those locations known: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-92"></span><ul><li><p class="line862">Python needs to be able to find the <tt class="backtick">MoinMoin</tt> code package - this is needed so that <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-93"></span><tt class="backtick">from&nbsp;MoinMoin&nbsp;import&nbsp;...</tt> can work. ( <img alt="(!)" height="16" src="/moin_static190/modernized/img/idea.png" title="(!)" width="16" /> This is <strong>not</strong> needed if you choose to do a <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-94"></span>system-wide installation.) <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-95"></span></li><li><p class="line862">Python needs to be able to find the wiki configuration files so that MoinMoin <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-96"></span>is able to import them. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-97"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-98"></span></li></ul><p class="line862">For this to work, you can simply edit <tt class="backtick">moin.wsgi</tt> (or in case you deploy with CGI/FCGI/etc. the <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-99"></span>particular example from <tt class="backtick">wiki/server</tt>). There is already example code in those files, just remove <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-100"></span>the comment (# hash character) and change them accordingly: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-101"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-102"></span><p class="line867"><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-103"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-104"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-105"></span><pre>sys.path.insert(0, '/moin/code')
sys.path.insert(0, '/moin/config')</pre><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-106"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-107"></span><p class="line862">You can place <tt class="backtick">moin.wsgi</tt> anywhere you like. Just make your web server find and use it. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-108"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-109"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-110"></span><p class="line867">
<h3 id="InstallDocs.2BAC8-ServerInstall.MoinMoin_wiki_configuration">MoinMoin wiki configuration</h3>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-111"></span><p class="line874">Although the code is now ready to run, your wiki is not configured yet. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-112"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-113"></span><p class="line862">You now have to create your wiki configuration within the <tt class="backtick">/moin/config/</tt> directory. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-114"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-115"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-116"></span><p class="line867">
<h4 id="InstallDocs.2BAC8-ServerInstall.Single_wiki">Single wiki</h4>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-117"></span><p class="line862">Just copy the file <tt class="backtick">wiki/config/wikiconfig.py</tt> from the distribution archive to <tt class="backtick">/moin/config/</tt>. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-118"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-119"></span><p class="line874">The file is thoroughly commented to ease you through the configuration. Be sure that if <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-120"></span>you configure paths in the file, that those paths are <strong>absolute</strong> paths. This way you <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-121"></span>ensure that the needed files are definitely found and save yourself some troubles. The  <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-122"></span>essential configuration directives are: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-123"></span><ul><li><p class="line891"><tt class="backtick">data_dir</tt>: this should point to where the particular data of your wiki should be stored. (see below) <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-124"></span></li><li><p class="line891"><tt class="backtick">data_underlay_dir</tt>: MoinMoin comes with (pre-made) system and help pages. This directive <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-125"></span>should point to the directory where you put those (see below) <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-126"></span></li><li><p class="line891"><tt class="backtick">interwikiname</tt>: This should be a short descriptive identifier for your wiki. It needs to be <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-127"></span>unique and should <strong>never</strong> be changed later <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-128"></span></li><li><p class="line891"><tt class="backtick">sitename</tt>: This will be the name of your wiki for display purposes <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-129"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-130"></span></li></ul><p class="line867"><img alt="/!\" height="16" src="/moin_static190/modernized/img/alert.png" title="/!\" width="16" /> We don't require any specific file system locations, but please be careful: <tt class="backtick">data_dir</tt> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-131"></span>contains sensitive informations that <strong>must not</strong> be read by anything or anyone except <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-132"></span>the running moin wiki code. For example, you <strong>must not</strong> make <tt class="backtick">data_dir</tt> accessible <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-133"></span>directly via the webserver, thus you <strong>must not</strong> copy them to a directory below document <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-134"></span>root of your webserver. Any other permanent storage location on a fast local filesystem will be fine. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-135"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-136"></span><p class="line862">You need to copy the complete contents of the <tt class="backtick">wiki/data/</tt> directory we provide in the distribution archive <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-137"></span>to the location you specified as <tt class="backtick">data_dir</tt>. The same goes for <tt class="backtick">wiki/underlay/</tt> and the location <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-138"></span>you specified as <tt class="backtick">data_underlay_dir</tt>. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-139"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-140"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-141"></span><p class="line867">
<h4 id="InstallDocs.2BAC8-ServerInstall.Multiple_wikis">Multiple wikis</h4>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-142"></span><p class="line862">Just copy the files <tt class="backtick">wiki/config/wikifarm/*</tt> from the dist archive to <tt class="backtick">/moin/config/</tt>. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-143"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-144"></span><p class="line874">Now follow the directions as for a single wiki (see above) for each of your farm wikis. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-145"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-146"></span><p class="line874">Special wiki farm hints: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-147"></span><ul><li><p class="line862">You need a separate <tt class="backtick">data_dir</tt> and <tt class="backtick">data_underlay_dir</tt> per wiki <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-148"></span></li><li><p class="line862">If you want to share some settings for your wikis, put them into <tt class="backtick">farmconfig.py</tt> - they will be inherited by <tt class="backtick">mywiki</tt> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-149"></span></li><li><p class="line862">The settings that need to be different are put into <tt class="backtick">mywiki.py</tt> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-150"></span></li><li><p class="line862">If you need more than 1 wiki, add files like <tt class="backtick">mywiki.py</tt> and reference them from <tt class="backtick">farmconfig.py</tt> as you see for <tt class="backtick">mywiki</tt> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-151"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-152"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-153"></span></li></ul><p class="line867">
<h4 id="InstallDocs.2BAC8-ServerInstall.Static_file_serving">Static file serving</h4>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-154"></span><p class="line867">MoinMoin also comes with some static files like images, CSS, Javascript, Java applet files, etc. (see the <tt class="backtick">MoinMoin/web/static/htdocs/</tt> directory in the distribution archive). They are needed for things like styling, icons and additional client-side functionality. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-155"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-156"></span><p class="line867">MoinMoin serves those files by a builtin static file server at the path '/moin_staticXYZ' (XYZ like in MoinMoin version X.Y.Z, e.g. <tt class="backtick">/moin_static190</tt> for moin 1.9.0). <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-157"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-158"></span><p class="line874">Please note that this path is relative to the script root, so: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-159"></span><ul><li><p class="line862">if you run your wiki script at <tt class="backtick">/mywiki</tt>, the URL for the static files server will be <tt class="backtick">/mywiki/moin_staticXYZ</tt>. You need to configure <tt class="backtick">url_prefix_static</tt> in your wiki config to match this. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-160"></span></li><li><p class="line862">if you run your wiki script at <tt class="backtick">/</tt>, the URL for the static files server will be <tt class="backtick">/moin_staticXYZ</tt> - and it will automagically match the default value of <tt class="backtick">url_prefix_static</tt>, so no need to configure it. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-161"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-162"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-163"></span></li></ul><p class="line867">
<h3 id="InstallDocs.2BAC8-ServerInstall.Running_MoinMoin_with_mod_wsgi">Running MoinMoin with mod_wsgi</h3>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-164"></span><p class="line862">Now you should be able to simply run the <tt class="backtick">moin.wsgi</tt> script the same way you <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-165"></span>ran <tt class="backtick">test.wsgi</tt> above. You can test if everything works by following these <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-166"></span>steps: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-167"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-168"></span><ul><li><p class="line862">Access the URL you have configured for your wiki and you should see something that looks similar to the <a class="http" href="http://moinmo.in/">MoinMoin homepage</a>. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-169"></span></li><li><p class="line862">Go to the WikiSandBox page in your wiki. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-170"></span></li><li>Try to edit it and save your changes. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-171"></span></li><li><p class="line862">If that works, see if your edit is shown on the <a href="http://master19.moinmo.in/RecentChanges">RecentChanges</a> page. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-172"></span></li><li><p class="line862">If you see them, congratulations, your new wiki works! <img alt=":)" height="16" src="/moin_static190/modernized/img/smile.png" title=":)" width="16" /> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-173"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-174"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-175"></span></li></ul><p class="line867">
<h3 id="InstallDocs.2BAC8-ServerInstall.Running_MoinMoin_with_CGI.2C_FastCGI.2C_SCGI_or_AJP">Running MoinMoin with CGI, FastCGI, SCGI or AJP</h3>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-176"></span><p class="line862">If you are not running a WSGI capable server and want to deploy MoinMoin with one <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-177"></span>of the other methods (like CGI, FastCGI, SCGI or AJP), just use the appropriate script <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-178"></span>for the desired method from <tt class="backtick">wiki/server/</tt> (instead of <tt class="backtick">moin.wsgi</tt>): <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-179"></span><ul><li><p class="line891"><tt class="backtick">moin.cgi</tt>: serves both CGI <strong>and</strong> FastCGI requests. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-180"></span></li><li><p class="line891"><tt class="backtick">moin.scgi</tt>: serves SCGI capable servers <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-181"></span></li><li><p class="line891"><tt class="backtick">moin.ajp</tt>: serves AJP capable servers <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-182"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-183"></span></li></ul><p class="line862">Now edit that script (similarly as shown above for <tt class="backtick">moin.wsgi</tt>) to make python find <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-184"></span>the moin code and wiki configuration files. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-185"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-186"></span><p class="line874">For setting up your particular webserver to speak any of these protocols to the <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-187"></span>moin application, please refer to the webserver's documentation. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-188"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-189"></span><p class="line867"><img alt="/!\" height="16" src="/moin_static190/modernized/img/alert.png" title="/!\" width="16" /> When using the scripts for FastCGI, SCGI or AJP (<strong>not</strong> CGI), be aware <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-190"></span>that they can also act as externally spawned processes to the webserver. Via <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-191"></span>the means of commandline parameters they can be bound to an interface or UNIX <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-192"></span>socket and also do threading or forking for performance. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-193"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-194"></span><p class="line862">Try running <tt class="backtick">moin.cgi&nbsp;--help</tt> for an example. When run without any options by the webserver, <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-195"></span>control of sockets and the like is left to the webserver. <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-196"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-197"></span><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-198"></span><p class="line867">
<h2 id="InstallDocs.2BAC8-ServerInstall.Troubleshooting">Troubleshooting</h2>
<span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-199"></span><p class="line874">When things go wrong and reading the docs does not help, just: <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-200"></span><ul><li><p class="line862">ask concrete questions on the <a class="interwiki" href="http://moinmo.in/MoinMoinChat" title="MoinMoin">MoinMoinChat</a> <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-201"></span></li><li>and wait until someone answers <span class="anchor" id="InstallDocs.2BAC8-ServerInstall.line-202"></span></li></ul><span class="anchor" id="InstallDocs.2BAC8-ServerInstall.bottom"></span></div> <span class="anchor" id="line-33"></span><span class="anchor" id="bottom"></span></div><p id="pageinfo" class="info" lang="en" dir="ltr">MoinMaster: InstallDocs  (last edited 2009-02-15 21:33:36 by <span title="">anonymous</span>)</p>
<div id="pagebottom"></div>
</div>
</body>
</html>