Here is a recipe for configuring Moin with CGI on Apache 2.0 with multiple wikis (i.e. a farm), '''without having the wikis mounted at the root of domains'''. This last bit is a touch tricky, and I could find no recipes for it, though I found some requests for such a recipe. The wikis are to be at: * hello.ogbuji.net/wiki/alpha * hello.ogbuji.net/wiki/beta Key snippets from vhost definition (i.e. part of httpd.conf) {{{ Options +ExecCGI Order allow,deny allow from all Options FollowSymLinks Order allow,deny allow from all Alias /moin "/usr/share/moin/htdocs/" ScriptAlias / "/opt/www/hello.ogbuji.net/cgi-bin/moin.cgi" RewriteEngine on RewriteRule ^/wiki/[^/]+/(.*) /opt/www/hello.ogbuji.net/cgi-bin/moin.cgi/$1 [last,type=application/x-httpd-cgi] }}} Make sure `/opt/www/hello.ogbuji.net/cgi-bin/moin.cgi` is correctly updated to load farmconfig.py, as usual. Key snippets from farmconfig.py: {{{ wikis = [ ("alpha", r"^hello.ogbuji.net/wiki/alpha.*$"), ("beta", r"^hello.ogbuji.net/wiki/beta.*$"), ] }}} And other than that, config should be pretty typical of use with Apache/CGI. The trick here is the rewrite rule: {{{ RewriteRule ^/wiki/[^/]+/(.*) /opt/www/hello.ogbuji.net/cgi-bin/moin.cgi/$1 #... }}} Which matches e.g. `http://hello.ogbuji.net/wiki/alpha/FrontPage` and translates it to `http://hello.ogbuji.net/opt/www/hello.ogbuji.net/cgi-bin/moin.cgi/FrontPage`. moin.cgi sees the original, pre-rewrite URL, and so it matches it to the farmconfig entry just fine, and identifies the right wiki instance. It ```also``` gets the `FrontPage`, which allows it to get the right page from the right wiki. Most such examples use a pattern such as `^/wiki/(.*)`, but this leaks the wiki name into the page spec for moin.cgi, and so it would think you were accessing a page called `alpha/FrontPage`, which is clearly wrong. Adding that `[^/]+/` bit "eats" the wiki name before passing it to moin.cgi, correcting the problem.