Hi, I’m having a lot of trouble configuring the isapi_redirect connector between IIS and Tomcat. I am running out of ideas so it’s time to ask for help from the experts. I think the problems remaining are in the tomcat configuration area, not the IIS area anymore.
What’s wrong: The ISAPI module appears to be working and correctly sending AJP requests to Tomcat on port 8009, at which point Tomcat refuses those requests with a 403 error. The isapi_redirect.log shows the complete content of the tomcat response, and no longer shows any errors - in other words, it thinks it is working. Text of the 403 error: HTTP Status 403 – Forbidden Type Status Report Description The server understood the request but refuses to authorize it. Apache Tomcat/8.5.51 What does work: Requests directly to Tomcat on port 8080 to pages within the connector-exposed web application work fine. For example, both of these work: localhost:8080/exposedApplication/simple.html. (viewed on the server’s browser) my.servers.domain.com:8080/exposedApplication/simple.html (viewed anywhere else) What does not work: Requests that go through IIS and the connector to the connector-exposed application result in a 403 error. For example, this does not work: https:my.servers.domain.com/exposedApplication/simple.html This Windows 2019 setup has the following versions of tomcat, windows, etc: Tomcat version 8.5.51 Isapi_redirect.dll version 1.2.46.0 IIS 10/Windows server 2019 I also have two older, similar Windows Server environments that work perfectly. They both use these versions: Tomcat version 8.5.3 (64 bit) as a service Isapi_redirect.dll version 1.2.40.0 64 bit IIS 8/Windows server 2012R2 The component versions between the working and non-working environments are slightly different, and I think that might be the source of the problem - there are probably new configuration requirements that I need to be aware of. I started with the settings used in the working environments and found that some things needed to be changed to get the connector to work at alll. For example I had to specify an iPv4 address for the connector where I didn’t need to before. My theories at the moment: 1. Maybe allowedRequestAttributesPattern is a problem? I saw a note about the allowedRequestAttributesPattern attribute for the AJP connector possibly causing a 403 error, but I don’t understand how to use it or if it is needed. 2. It’s possible that something in the Tomcat permissions settings are wrong, but I really don’t know where to look. Relevant configuration settings in server.xml, workers.properties and uriworkermap.properties: server.xml <Connector port="8080" protocol="HTTP/1.1” connectionTimeout=“20000" redirectPort="8443" /> <Connector protocol="AJP/1.3” address=“127.0.0.1" port="8009" requiredSecret="true" secret=“xxxxxxxx" redirectPort="8443" /> <Host name="localhost" appBase=“webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> </Host> <Host name="127.0.0.1" appBase=“webapps” unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="127_0_01_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> </Host> workers.properties # Set properties for worker1 (ajp13) worker.worker1.type=ajp13 worker.worker1.host=127.0.0.1 worker.worker1.port=8009 worker.worker1.secret=xxxxxxxx uriworkermap.properties /exposedApplication/*=worker1 Any suggestions or new directions will be welcome. Thank you, Ellen Meiselman --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org