Of course, Apache's
mod_rewrite module pwns. However, I'm interested in comparable solutions which work with IIS on Windows Server.
ISAPI_Rewrite from Helicon Tech is probably the most popular and best supported option. However, though it seems to be an excellent product with many powerful features (including some not supported by mod_rewrite, such as rewriting request methods and HTTP headers [forgive me if mod_rewrite can in fact do these things]) and a good regular expression engine (
Boost.Regex), it lacks some of mod_rewrite's less-used but cool features, such as some of the RewriteCond special flags (-d and -f are must-have features for me). Also, it implements some things (such as chained RewriteCond's) in a rather quirky manner.
There are various other solutions which work with IIS, but most of them are pretty basic, or sometimes downright terrible.
However, a cool product which just came to my attention about a week ago is
IIRF (Ionic's ISAPI Rewrite Filter), which is free and open source. While it currently lacks some of the whiz-bang features of mod_rewrite and ISAPI_Rewrite, it seems to be in pretty active development (the changes since July have been very significant), it uses a good regex engine (
PCRE), and as of the latest version it supports my must-have -d and -f RewriteCond flags. Woohoo!
Does anybody know about other potential solutions which, like IIRF and mod_rewrite, can base conditional URL rewrites on whether or not files and/or folders exist on the server? Any other tidbits, suggestions, comparisons, or complaints to share about URL rewriting software?