I am setting up a wiki at work. These are our requirements:
- File based storage–so I don’t have to deal with installing a database on the wiki server
- Authentication of some kind–so that we can know who made changes to what document
- Versioning–so we can roll back changes if need be.
- PHP based–our website already runs php and I don’t want to deal with alternate technologies if I don’t have to.
- Handles binary uploads–in case someone had a legacy doc they wanted to share.
- Publish to PDF–so we can use this wiki for more formal documents. We won’t publish the entire site, but being able to do this on a per document basis is required.
I see this wiki both as a repository for company muscle memory (technical decisions, R&D results) and a place for more formal documents (requirements) that might be published to PDF. Basically, I’m trying to get rid of .doc files as a technical document format. I read about this on some XP mailing lists of which I used to be a part and am interested to see how effective it might be.
I started with PHPWiki but its support for PDF was lacking. (At least, I couldn’t figure it out, even though it was documented.)
After following the wizard process at WikiMatrix (similar to CMSMatrix, which I’ve touched on before), I found PmWiki, which has support for all of our requirements. It also seems to have a nice extensible architecture.
Installation was a snap and after monkeying around with authentication and PDF installation (documented here), I’ve added the following lines to my local/config.php
:
include_once('cookbook/pmwiki2pdf/pmwiki2pdf.php');
$EnablePostAuthorRequired = 1;
$EnableUpload = 1;
$UploadDir = "/path/to/wiki/uploads";
$UploadUrlFmt = "http://www.myco.com/wiki/uploads";
$UploadMaxSize = 100000000; // 100M