The following instructions detail how to get Deki Wiki up and running via Microsoft IIS. Certain steps of this installation are the same as the standard instructions and will be referred to.
Make sure IIS is setup to use the "dekiwiki/web" directory, as this contains the actual files required for the website.
Although .NET 2.0 installs and works on Windows 2000, it's missing the http.sys driver required by Deki Wiki for it's host service to run. Mono must be used instead and although the Wiki will currently run under this setup, the service cannot use external executables. This means that functionality using ImageMagick and extensions using external programs will not currently function correctly.
This is not a Deki Wiki bug and seems to be a problem with Mono itself.
Follow the standard instructions for MySQL.
Follow the standard instructions for PHP except for anything related it to Apache.
If running Windows 2003/Vista you can run PHP via FastCGI in IIS, which gives great performance gains and stability.
For Deki Wiki to work via FastCGI PHP you'll need to update some code until the fix has made it into a release.
This is required to support URL rewriting and proxying in IIS, unfortunately it is commercial software and must be bought (or trialed for 30-days free). There is a "lite" free version but this doesn't support the required proxy feature. Version 2 has been tested and version 3 should work but hasn't been tested.
Following the Helicon supplied instructions for installing the software and then add the following to a httpd.ini file within your Deki Wiki web root (affects only the Deki Wiki site) or into the main httpd.ini file contained in the ISAPIRewrite installation directory (will effect all IIS sites).
RewriteRule (/)? /index.php?title= [L] # in the following rule, $1 contains the whole url RewriteProxy /@api/(.*) http://localhost:8081/$1 RewriteRule /(redirect|texvc|index|Version|dummy|phpinfo)\.php /$1.php [L] RewriteRule /(robots\.txt|favicon\.ico) /$1 [L] RewriteRule /(editor|skins|config)/(.*) /$1/$2 [L] RewriteRule /error/(40(1|3|4)|500)\.html /error/$1.html [L] RewriteRule /index\.php(.*) /index.php$1 [L] RewriteRule /(.*) /index.php?title=$1 [L]
Note: The RewriteProxy rule may appear like it is missing the "@api" but it does work. The $1, in the result pattern, matches the whole URL and the "(.*)" would be contained in $2.
Work is being undertaken to get the Deki Wiki host service to run inside IIS. This would negate the requirement of a proxy solution and a free URL rewriting solution for IIS can be used instead.
There are some free IIS replacements for RewriteProxy / ProxyPass / ProxyPassReverse but these have not been tested or don't appear to be maintained. If one is found, please add a comment with the possibility of updating the instructions on using it and a free URL Rewriting solution.
http://www.managedfusion.com/products/download.aspx#url-rewriter