Thanks to the URL Rewite module in IIS 7 (Windows 2008), I have
managed to get clean URL's working.
In you web.config, just use
<?xml version="1.0"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="pixie" patternSyntax="Wildcard">
<match url="*"/>
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory"
negate="true"/>
</conditions>
<action type="Rewrite" url="index.php"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
This has only been tested on the root of a website, not in a sub
directory.
For old versions of IIS (i.e. if you use Windows 2003),
http://www.urlrewriting.net/
can be used