Hi All,
I'm having trouble getting
Tomcat to serve pages through IIS. I have tried to follow several step-by-step guides online but haven't really had much luck! I've searched through this forum but again, I haven't been able to find anything that's fixed my problem.
I downloaded jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip, and followed the setup instructions on the jakarta site. I made a slight modification to the setup script (so that it created the jakarta virtual folder in mydomain.com rather than IIS's "Default Website"), but other than that I believe I've done precisely as instructed!
Tomcat is running on port 8080 and when I hit
http://www.mydomain.com:8080/context/main.jsp, Tomcat faithfully serves up the page. However when I attempt to hit
http://www.mydomain.com/main.jsp, IIS serves up a 404.
If I look in the IIS log, I can see that IIS is attempting to push the request towards the isapi_redirector dll:
#Fields: date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs-version cs(User-Agent) cs(Cookie) cs(Referer) sc-status sc-win32-status sc-bytes cs-bytes time-taken
2007-05-27 11:48:19 W3SVC10769 XXX.XXX.220.132 GET /jakarta/isapi_redirector2.dll - 80 - XXX.XXX.56.247 HTTP/1.1 Mozilla/5.0+(Windows;+U;+Windows+NT+5.1;+en-GB;+rv:1.8.1.3)+Gecko/20070309+Firefox/2.0.0.3 s_pers=%20s_vsn_paypalglobal%3D4757241787590%7C1473537542953%3B - 404 1260 1814 525 31
...so I'm guessing it's a problem with the way the dll has been configured.
Here is my workers2.properties:
==============================================
[shm]
info=Scoreboard. Requried for reconfiguration and status with multiprocess servers.
file=D:\Tomcat 5.5\work\jk2.shm
# Example socket channel, override port and host.
[channel.socket:XXX.XXX.220.132:8009]
info=Ajp13 port forwarding over socket
tomcatId=XXX.XXX.220.132:8009
[logger]
level=DEBUG
[logger.file:0]
level=DEBUG
file=D:\Tomcat 5.5\logs\jk2.log
[workerEnv:]
info=Global server options
timing=1
debug=0
logger=logger.file:0
# define the worker
[ajp13:XXX.XXX.220.132:8009]
channel=channel.socket:XXX.XXX.220.132:8009
# Map the Tomcat examples webapp to the Web server uri space
[uri:88.208.220.132/*]
context=/ols-web
worker=ajp13:XXX.XXX.220.132:8009
=============================================================
I attempted to enable logging to see whether this would give me any clues, but the file I specified (D:\Tomcat 5.5\logs\jk2.log) doesn't get created.
Here's Tomcat's context.xml
==============================================================
<Context path="/ols-web" reloadable="true" docBase="D:\Tomcat 5.5\webapps\ols-web" workDir="D:\Tomcat 5.5\webapps\ols-web\work" >
<Logger className="org.apache.catalina.logger.SystemOutLogger" verbosity="4" timestamp="true"/>
</Context>
==============================================================
...and here's the bit in server.xml where the AJP connector port is configured:
==============================================================
<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
==============================================================
If anyone can offer any advice, I'd be really grateful.
Cheers,
Richard.