ISAPI_Rewrite is Apache .htaccess mod_rewrite compatible URL rewriter for Microsoft IIS. It makes possible to move configurations from Apache to IIS and vice versa just by copying .htaccess files. It is used for search engine optimization, to proxy another server's content, stop hotlinking or strengthen server security.
Top features of ISAPI_Rewrite:
- Same syntax and behavior as of Apache mod_rewrite makes it possible to migrate configurations just by copying .htaccess files.
- Regular expressions for flexible and powerful configurations.
- Extremely fast, durable and highly scalable pure C++ code.
- Distributed configurations: global server level, virtual host (web site) level, directory level .htaccess files with real-time monitoring.
- Isolation - user level configuration affects only local user environment making ISAPI_Rewrite an ideal solution for web hosting providers.
Top usage examples:
- Search engine optimization.
- Proxying content of one web server through another web server.
- Prevention of content leeching (direct hotlinking).
- Blocking specific hosts, referrers or annoying robots.
- Content negotiation - serving different files for different language or different browsers.
- Load balancing emulation for web cluster.
List of supported Apache .htaccess directives:
<VirtualHost>
<Directory>
<DirectoryMatch>
<Files>
<FilesMatch>
<Location>
<LocationMatch>
AccessFileName
AllowOverride
ErrorLog
LogLevel
RewriteEngine
RewriteRule [C,CO,F,G,L,N,NC,NE,P,PT,QSA,R=,S=,T=]
RewriteCond [NC,OR,-d,-f,-s]
RewriteBase
RewriteMap [txt:, rnd:, int:]
RewriteLog
RewriteLogLevel
RewriteOptions
RewriteLock
You can find more useful examples in ISAPI_Rewrite documentation and Apache online documentation or script archives. Most of Apache examples can run with ISAPI_Rewrite without modification.