I've used IIRF, with IIS6, successfully in many applications - I think it's great! I recently used it for the first time when building a Zend application, and while I'm pretty sure it was working fine at first, I uploaded some updates to the application
code and suddenly URLs where not loading as they were supposed to. It's not clear to me however what's working and what isn't.
The rule in the .ini file, copied from the Zend site, is
RewriteRule ^(/[^.]+)$ /index.php?$1. The hompage loads fine, but when I try http://domain.com/controller, it also loads the homepage when it should load the specified controller. When I try http://domain.com/controller/, it loads the layout
in which the controller ouput should sit, but loads the text of the browsers 404 response where the controller output should be. If I load http://domain.com/index.php/controller/, it works (with or without the last slash).
If I remove the above rule from the .ini file, http://domain.com/controller/, with or without the slash, returns a proper browser 404 response (as opposed to just the text from the error page written into the page where the controller view should be).
The exact same application code and IIRF files on my dev machine, running IIS7, work as they're supposed to.
Is this behaviour understandable to you, i.e. do get what could cause this pattern of behaviours? Can you suggest further steps to isolate the cause of the problem?