This is a Wiki which takes advantage of DICE authentication. TWiki was chosen, because it seemed to be the only Wiki with real enterprise security features. Whilst I'm not wanting to control edit access to the pages on the Wiki, being able to tell who those accesses came from is important. Integration with our existing KX509 authentication system was important.

TWiki links in with the mod_authssl presentation of the KX509 authentication system without any code changes. As mod_authssl makes the authenticated user's identity available through the REMOTE_USER enivornment variable, Twiki is used in straightforward enterprise authentication mode, with access control directives add to the .htaccess file in the cgi-bin directory.

URL rewriting

In the current incarnation of the Wiki, we use mod_rewrite in order to make the URLs shorter, as follows:

  • Firstly, we make the root of the web server the bin Twiki cgi-bin directory
  • Alias /pub directly to the Twiki /pub directory so that http://example.org/pub/ still works
  • In order that the /view/ path component isn't required for every page view, we check the URL - if it doesn't
  • correspond to a file present in the current directory, we redirect it to /view/

The Apache magic to do all of this is as follows:

  DocumentRoot /var/www/html/twiki/bin
  Alias /pub /var/www/html/twiki/pub

  <Location />
    RewriteEngine on
    RewriteRule /pub/(.+) /var/www/html/twiki/pub/$1 [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.+) /view%{REQUEST_URI} [L]

And Twiki.cfg needs to read:

$defaultUrlHost   = "https://wiki.dice.inf.ed.ac.uk";
$scriptUrlPath    = "/";
$dispScriptUrlPath = "";
$dispViewPath     = "";
$pubUrlPath       = "/pub";

Bluesky and upgrade

We've now upgraded to the September 2004 stable release of TWiki, with the addition of the Blueskin theme.

-- SimonWilkinson - 20 Jul 2004

Topic revision: r3 - 26 Mar 2005 - 16:43:43 - SimonWilkinson
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
This Wiki uses Cookies