phiki.waterwave.ch
A month ago or so, someone spammed my Wiki with asian links. This overwrote all my data because PhikiWiki doesn't have a backup-mechanism or a versioning system. Since i had a backup of the webserver, i could restore the Wiki. But i didn't want to restore manually the backup via FTP each time someone overwrites my Data.
So i built a versioning system based on rcs
. I've searched the write and read functions in the code and added just an co
before the read function and a ci
before the write function.
Now each time someone changes a document, it's stored as a new
version of the document. The different versions are made accesible by
the r=
GET-parameter (example: version 1.38 and 1.50 of FrontPage).
If now someone fills my Wiki with spam, i can just load the last good
version and store it as the new version. No need to replay a backup via
FTP.
The syntax of PhikiWiki doesn't have enough features for my needs, so i decided to use Markdown instead. I just removed all the formatting stuff of phiki and added a simple Markdown($txt);
call.