Gary,
Your understanding is correct. The JK isapi_redirect.dll redirector
installed on IIS proxies requests to Tomcat on port 8009 over the
Apache JServ Protocol v1.3.
[Client] ----> HTTP/S (80/443) ----> [IIS] ----> AJP (8009) ----> [Tomcat]
If you have a firewall between IIS and Tomcat, you would just need to
open up inbound TCP port 8009.
The AJP protocol is not designed to be tunneled through SSL (port
443), although that's certainty possible (as with any other TCP
protocol) with custom OS/-level configuration. By default that will
not be the case.
Having said that, the JK connector in Tomcat can issue "redirects",
for unsecured connections in case your application has a user-data-
constraint with a transport guarantee of CONFIDENTIAL or INTEGRAL.
If you take a look at server.xml file, you'll find that by default the
redirects are sent to port 8443:
Code:
<Connector port="8009" enableLookups="false"
redirectPort="8443" protocol="AJP/1.3"
emptySessionPath="true" />
When a 302-redirect is sent back to the client:
1) Browser makes another request at the specified port (8443 by default)
2) IIS accepts that request (handling all SSL encryption)
3) IIS then proxies the request to Tomcat over AJP/8009 (informing Tomcat that the request is now "secure")
4) Tomcat generates the response
5) IIS receives the response from Tomcat over AJP
6) Client receives the response from IIS over HTTPS
I am not sure what you mean by not seeing hits to port 8009 unless you
specifically call it *via the URL*. You will not be able to make any
"browser" connections over the AJP/8009.
I hope this helps,
Sasa