[dokuwiki] Re: wiki farm

  • From: Myron Turner <turnermm02@xxxxxxx>
  • To: dokuwiki@xxxxxxxxxxxxx
  • Date: Tue, 04 Dec 2007 09:53:12 -0600

Jason Keltz wrote:

I was experimenting (again) with the idea of a DokuWiki wiki farm where all the wikis use the same symlinked copy of DW. I couldn't do this in the past because the use of the php realpath function. However, in the DW development code, this was replaced with the fullpath() function in order to alleviate this problem. I still wasn't able to successfully farm just yet.

I ran into two problems:

1) There's still no built in way to make DOKU_CONF refer to the "local" DW version, rather than the distribution copy:

if(!defined('DOKU_INC')) define('DOKU_INC',fullpath(dirname(__FILE__).'/../').

// define config path (packagers may want to change this to /etc/dokuwiki/)
  if(!defined('DOKU_CONF')) define('DOKU_CONF',DOKU_INC.'conf/');

I know it can be done through php prepend, but it's just not elegant. I'd like to be able to do it completely through DW.

2) The second problem is, I think, a bug. The CSS didn't seem to load properly for my template. I think this is because lib/exe/css.php doesn't surround the DOKU_INC define with fullpath:
 if(!defined('DOKU_INC')) define('DOKU_INC',dirname(__FILE__).'/../../');

(Neither does ajax.php, detail.php, fetch.php, indexer.php, js.php, mediamanager.php, opernsearch.php, and xmlrpc.php in the same directory)

It would help perhaps if you'd give us a schematic of your directory structure, including symlinks.

I've been working on something similar to what you propose, in which each new document section gets its own stripped down dokuwiki. All resources are shared in common. I create a new top level directory for each section. Then each (link to) doku.php sees itself at the top of its own directory hierarchy and all the other directories come off it. Similarly with any other file/script which lives in that directory, in particular feed.php. The media manager works, as does detail.php.


Myron Turner

DokuWiki mailing list - more info at

Other related posts: