I wrote this isapi_redirect HowTo a few years ago before I had access to a Windows 2008 host to test with. Here are a few notes to help avoid some commonly experienced issues with IIS 7.5 and the Tomcat isapi_redirect.dll connector:
workers.properties settingsIf you are setting up isapi_redirect to connect to a tomcat/jboss/glassfish server running on localhost, don't use 'localhost' for the worker host parameter, use 127.0.0.1 instead. On Windows 2008/IIS7.5, isapi_redirect can't seem to find localhost even if localhost is explilcitly set in the HOSTS file on your Windows system. Instead, it will log messages in your isapi_redirect log file like this one:
jk_open_socket::jk_connect.c (627): connect to 0.0.0.0:8009 failed (errno=49)
Your browser, when trying to open the URI for the web application, will generate a Service Unavailable message. Switching to 127.0.0.1 solves this.
404 Not Found or Server 500 Error MessagesPlace your isapi_redirect.properties file in the same directory that the DLL is located in and the directory the DLL file is located in should not have any spaces in it's name. This should resolve any 500-level error messages when testing a connection to see if isapi_redirect.dll is working. Other configuration files should be in a subdirectory named "conf".
In addition, on any new Windows system you log into, the first thing to do is check to make sure that Explorer is not Hiding File Extensions for Known File Types. I was receiving 404-Not Found messages testing a connection because I had not noticed that Windows was adding a .txt file extension to my isapi_redirect.properties, uriworkermap.properties, and workers.properties files when I created them using "New Text Document" from the context menu.
Lately, I don't get to play with IIS all that often so I'm filing this here for future reference because searching for it on the web took much longer than it should have.
IIS7.5 has a built-in buffer size limitation of 4MB on ASP's. This causes any asp that contains a response greater than 4MBs to error out to the browser/client. The error that is commonly logged in the web server logs is a 500 status code with text like the following:
ASP_0251_:_80004005|Response_Buffer_Limit_Exceeded
There are a few ways to handle the error, which are documented in this Microsoft Knowledge Base article but if you want a shortcut and you're running IIS 7.5, open up Internet Services Manager. On the web site you wish to increase the limit on (or virtual directory if you only want it to be configured for that), click on the ASP property, then Open Feature. Expand the Limits Properties group and then modify the Response Buffer Limit setting. Once you enter in a new value, click Apply and you're all set. No IIS or server restart is necessary.