Today, setting up a WikiWikiWeb of one's own is a nontrivial enterprise. It's rather like baking a cake before the era of packaged mixes or frozen thaw-and-serve confections. One must be able to follow a sometimes-arcane recipe, interpret ambiguous instructions, and correct for variations in local circumstances ( ... my oven runs 25 degrees too hot ... I'm out of baking powder, but baking soda plus cream of tartar should work ... ). Perhaps a programmer with the right expertise can craft a click-and-go Wiki soon. Meanwhile, here is a step by step outline of the recipe that I followed to get my local Wiki operational.
Note: At the moment I am on an Apple Macintosh iBook running OS-X version 10.0.4 — essentially a variety of UNIX with a nice graphical user interface on top. I may be the only Wiki user of OS-X right now on the planet ("Hello! Anybody home?") ... but the procedures described below, mutatis mutandis, should help erstwhile Wiki installers with other configurations.
WARNING! Do not attempt to perform the following steps unless you understand them and are willing to accept responsibility for all the consequences!
- Do you really want to run a local Wiki? Consult TheWikiWay (by Bo Leuf and Ward Cunningham) and/or experiment with online Wiki systems. If the answer is "No", skip the remaining steps below.
- Can you run a local Wiki? You need a computer that has or can support a web browser, a web server, and a programming language for Wiki scripts. You need to be able to put a small amount of software onto the computer. You also need some time, probably several hours, to invest in the project. If the answer is "No", skip the remaining steps below.
- If you do not already have one installed, get a web browser running on your computer. (The browser must be able to support simple forms, something which virtually all browsers can do nowadays.)
- Identify a Wiki system, acquire it, and examine it. The comments and documentation that accompany the Wiki will describe what software (programming language, operating system services, etc.) that it needs in order to operate. (E.g., the Wiki scripts in TheWikiWay require a Perl interpreter.)
- Confirm that the Wiki system you are planning to use is complete and ready for installation. Consult with the supplier and/or with other users of the system. (E.g., the CD-ROM provided with the original edition of TheWikiWay had some problems which were introduced during the production process. They were straightforward to fix, once they were identified.)
- If you do not already have one running, identify a web server, acquire it, examine it, and install it. The web server you use must be able to accept "http:" GET and POST commands from your browser, and must be able to execute simple programs, called "cgi-bin" scripts, in order to generate dynamic web pages in response to the browser's requests. (TheWikiWay CD-ROM includes a Perl mini-server called "Quicki" which works, given some tweaks which are discussed elsewhere. Alternatively, the Apple Macintosh under OS-X has a built-in Apache web server. To activate it, from the "System Preferences" control panel display select "Sharing" and click the "Start" button to turn "Web Sharing On". You need to log in as an Administrator to do this.)
- Configure your web server to run cgi-bin scripts from a selected directory within into which you will put the Wiki system's program files. (The "Quicki" mini-server will do this from its own directory. If using the Apache server on a Mac under OS-X, edit the configuration file "/private/etc/httpd/httpd.conf" and insert the line:
ScriptAliasMatch /~(.*)/cgi-bin/(.*) "/Users/$1/Sites/cgi-bin/$2"
in the config file immediately after the point where"ScriptAlias"
is defined. This permits users to run scripts in their own directories "Sites/cgi-bin/"; otherwise all scripts have to be in the directory"/Library/WebServer/CGI-Executables/"
. Note that you have to log in as an Administrator to do this editing of "httpd.conf"; note also that you have to turn Web Sharing off and then on again for changes in the configuration to take effect. Tnx to Jeffrey Ubersax for suggesting this approach.) - Make a directory for the Wiki scripts. (E.g., assume that the user is called "username". Create a directory "cgi-bin" in the user's directory "Sites"; in the Finder go to the home directory of "username" and choose "New Folder" in the "File" menu; or alternatively, from a Console window do "cd ~username/Sites" and then "mkdir cgi-bin".)
- To confirm that your web server and browser are now working together properly and are ready to interpret Wiki programs, put a test cgi-bin script into the directory you have created and execute it from your browser. (E.g., take a copy of the script "printenv" from the default Apache
"/Library/WebServer/CGI-Executables/"
directory, and put it into your user directory "~username/Sites/cgi-bin". Run a browser and point it to URL "http://localhost/~username/cgi-bin/printenv" and make sure that it loads and runs the script. If it does not, you may need to change the permissions of the directory or the file mode bits of the script to make it executable. From a Console prompt, "cd ~username/Sites/cgi-bin" and then "chmod go+x printenv".) - Take the Wiki system files you wish to install, place them in the cgi-bin user directory, and make sure that they are executable by the web server. (E.g., from TheWikiWay's distribution CD-ROM put "wiki.cgi", "changes.cgi", "refcount.cgi", "search.cgi", "template.html", "edit.cgi", and "save.cgi" into "~username/Sites/cgi-bin" — making sure that you use the Apache version of "save.cgi". Edit these files so that all references to "pages/$page" are changed to "../pages/$page" — this will let you keep the "pages" directory with your Wiki pages outside of the cgi-bin directory, and thereby Apache will be happy and will not try to interpret your Wiki pages as executable scripts. In the "template.html" file edit the reference to the logo to read "../logo.gif" for the same reason.)
- Put initial Wiki content files (e.g., a logo image and "seed" pages) into the directory which your Wiki system requires. (E.g., for TheWikiWay system put "logo.gif" into "~username/Sites", along with a directory "pages" of Wiki pages. Set permissions so that the web server can write to "pages": from a Console window, go to the "Sites" directory and "chmod go+w pages". If you have preexisting pages, give the server permission to edit them too:
"chmod go+w pages/*"
.) - Run a browser and point it to your Wiki. (E.g., go to URL "http://localhost/~username/cgi-bin/wiki.cgi" .) If all is well, you will see the home page of your Wiki. Browse by clicking on links, and add pages via the "Edit" and "Save" buttons (or, e.g., by going directly to them via "
http://localhost/~username/cgi-bin/wiki.cgi?PlaceNewPageNameHere
"). - Enjoy your personal Wiki!
(cf. InitialOddmuseInstallationNotes (2007-12-27), ...)
(correlates: QuickiWiki, LapisMouse, Oddmuse Local, ...)