Lightweight Wikis Without Databases QUICKIE WIKIS
Total Page:16
File Type:pdf, Size:1020Kb
COVER STORY Lean Wikis Lightweight wikis without databases QUICKIE WIKIS If you are thinking about starting a wiki, and you don’t want the over- head of a full-scale, database-driven system, try these light and lean wiki wonders. BY FRANK WIEDUWILT ikis are at the center of the a wiki is only feasible if it uses flat files hits. However, if you’re thinking about world we know as Web 2.0. In to store content. getting started with your own wiki and Wjust a few short years, the wiki Luckily, a number of smaller and sim- you don’t need the horsepower of a has become one of the most popular pler wikis are also available for Linux high-end, database-driven system, a lean tools on the Internet, thanks to a few users. These lean wikis have some re- wiki may be exactly what you need. very high profile projects and many strictions of course: projects should not smaller sites that are helping millions of have more than a few hundred articles. The Candidates users communicate and stay organized. If the number of pages keeps growing, We will be looking at five wikis, Wikep- The wiki’s open approach, where any- you can can expect major performance age, PWP, MoinMoin, PmWiki, and one can post and edit, makes it the per- fect counterpart for another famous tool For Bigger Projects of the new Internet known as the blog. The wikis discussed in this article are not suitable for large-scale projects with several Wikis offer an easy and intuitive means thousand pages. If you expect a large volume of content, and would appreciate more for collecting and editing content. sophisticated user management features, you need a wiki with database support. If you are planning a large wiki with Mediawiki: Definitely the most popular wiki of them all, and the platform for the Wikipe- hundreds of users and thousands of dia online encyclopedia and its local derivatives. Mediawiki [2] uses MySQL as its data- pages, you’ll need a full-featured, data- base back-end. base driven wiki tool such as Mediawiki. Wikka Wiki: This project [3] also uses MySQL to store text. The software is also extensi- But a community the size of the Wikipe- ble by means of plugins, and this makes it suitable for projects where the scope is not dia [1] community is atypical. For more known right from the outset. moderate tasks, a full-fledged wiki sys- ErfurtWiki: This wiki [4] supports various databases, and can even use flat files as its tem with an underlying database may back-end. The advantage is that you can use plugins, skins, and extension modules to have more disadvantages than benefits. modify the wiki’s look and feel to match your requirements. Installing and managing the wiki is just The Wikimatrix [5] page lists a number of wikis with and without database back-ends, too complicated. And for free webspace, describing each system’s capabilities in a comprehensive overview. where a database may not be available, 30 ISSUE 73 DECEMBER 2006 WWW.LINUX - MAGAZINE.COM Lean Wikis COVER STORY Dokuwiki, all of which are under active community development. All of these projects promise simple installation, even for non-DBAs. In the simplest of cases, you just need to unpack the source code archive on the web server to run the wiki. Some systems support a customized look and feel based on tem- plates, macros, or plugin-based exten- sions. Access controls are an important issue. If you are looking to create a wiki for public access, the danger is that un- friendly web users or robots might stum- ble across your page and misuse it for propaganda or ads. The Tipiwiki [6] homepage is just one example of wiki misuse. In August 2006, the wiki was more or less completely inundates with ad links, leaving the pages unusable ex- Figure 1: The simple structure of Wikepage lends itself to quick deployment, though the cept for the welcome page. general lack of documentation slows down the creative process. While wikis like Mediawiki have so- phisticated user management facilities In Wiki mode, editing is open to any page to get the wiki up and running. You that rely on a database back-end and user. In Personal mode, users need to can use any text editor to modify the allow administrators to define distinct supply a password before editing a page. configuration. PWP uses CSS to format user groups with distinct privileges, the The password applies to all pages, how- screen output, and this makes it highly smaller wikis often have nothing of the ever, and there is no support for distinct customizable. kind. The wiki dialect used for markups user privileges. PWP does not support user manage- for tagging or linking is also an impor- The formating options range from var- ment, although the developers do pro- tant aspect. If you need to move to a ious text markups, through lists, to sim- vide password protection for a few large system some time later, it would be ple tables. The developers also let you functions, such as exporting wiki pages nice to know whether you can do so integrate images into wiki pages. The to static HTML. Lars Ackermann, PWP’s without having to redo the formating. wiki dialect differs considerably from author, recommends using the web that of Mediawiki; you can expect diffi- server’s access controls and restricting Wikepage culties with the process of exporting access to the wiki via the .htaccess file. The motto of the Wikepage [7] wiki is content to another wiki. PWP supports a variety of formating “unpack and go.” The package weighs in Unfortunately, Wikepage does not give options: text markups, indentation, ta- at just 38 Kbytes, and its author, Sefer users much in the line of howtos or bles, and images. Before you can use an Bora Lisesivdin, explains the reason for manuals: neither the homepage nor the image file, you first have to upload it to a the small size: in the good old days of source code archive provide descriptions special Uploaded Files area of the wiki. the Commodore 64, developers just had of the markups or a guide to creating The software will then let you link to the 38911 bytes of user space to work with, your own themes. image from any wiki page. The Uploaded but they still managed to come up with Files area can also store files in other for- functional programs. He promises to PWP mats for public access by any wiki user. keep the Wikepage to less than 38911 PWP [9] stores wiki pages in flat files The wiki has a version control system bytes, although he is working on a plu- and requires a web server with PHP ver- in which it stores all previous revisions gin interface. sion 4.2 or newer. If you are using PHP5, of the wiki pages. A diff tool shows the Wikepage is based on the Tipiwiki [6] the software requires PHP4 compatibility differences between two versions of a code and requires a web server running mode. Again, the basic configuration is page. A full text search against all the PHP 5.1.4 or better. To install the wiki, easily done with PWP: just unpack the pages in the wiki, including text pages you just unpack the program archive, source code archive and open the index uploaded to Uploaded Files, gives users and you’re up and running. Wikepage searching ability. supports themes, and you can even GLOSSARY PWP will generate reports for wiki change the interface language by copy- .htaccess: The .htaccess file gives pages. You can choose between hierar- ing a language file to the wiki’s root di- administrators the ability to control chical lists, tables, indexes of keywords, rectory. access to data on a web server. You'll or lists with the title and teaser for each Themes let you change the look, and find several tutorials on .htaccess files wiki page. PWP can create calendars at there are a number of examples that you on the web (e.g., http://httpd.apache. the push of a button with a page for can use for your experiments at [8]. org/docs/1.3/howto/htaccess.html). each month and an overview of the WWW.LINUX - MAGAZINE.COM ISSUE 73 DECEMBER 2006 31 COVER STORY Lean Wikis lists, and icons. MoinMoin also supports tables. MoinMoin is the only test candi- date to have a WYSIWYG style editor for composing wiki pages. The wiki also supports subpages. One thing worthy of note is that the system supports text en- tries in DocBook syntax and can even export wiki pages to DocBook. MoinMoin stores previous versions of a text as backups. The version control system supports access to the last 100 versions, and URLs let you access older versions. You can diff two versions and display the most recent edits. MoinMoin also provides an RSS feed of the latest edits. The developers give users powerful searching abilities that support page title or full-text searches, multiple operator-linked search keys, and Boolean expressions. The wiki also generate indexes of titles, words, and Figure 2: MoinMoin lets you track recent changes. categories. The selection of help texts and tutori- whole year. In a style similar to Medi- store texts. Macros and themes let you als is exemplary, with comprehensive, awiki, PWP generates a table of contents customize the look; the MoinMoin easy to understand howtos for any de- from primary and secondary headings at homepage has a collection of ready-to- ployment scenario.