Hello tomcat connector users,

for those of you, searching for help in this mailing archive here
is some. I'm writing this e-mail, cause the list of typical bugs on
tomcat connector web site is to short.

My environment:
 - Windows 2003 Server with IIS6
 - Tomcat 6 on Java 6
 - isapi_redirect.dll (v1.2.26)

Of course, first you should read the IIS HOWTO on the tomcat
connector site. If you still have problems, read further ;-)

General pitfall: using registry (like in "IIS HOWTO")
Solution: DON'T USE the registry stuff, only use .properties files.
My experience: The registry values are not evaluated.
 I'm using isapi_redirect since v1.2.23, but I never got it
 running with registry settings. 
 To my personal favor, these .properties stuff is much better to handle.
 So, better clean the mentioned registry settions (descr. in IIS HOWTO)

General pitfall: path names miss matches
Solution: Check path names at least twice.
 For example, "isapi_redirect.dll" and "isapi_redirector.dll" 
 Not the same ! ;-)
My experience: Once you've got the right path names for
 all .properties files and log files together, you will get
 log files, which tell you (at least most the time) where 
 the error occurs.
 Even if windows does not count on, but I'm always respecting
 uppercase and lowercase in path names. This means, if 
 you are using camel case, type it everywhere like this.

At this point, you've set up everything, but you still don't 
see any response from tomcat, please look at the log files:

Typical log file locations:
IIS access logs:
 %WINDIR%\system32\LogFiles\W3SVC*\*.log
ISAPI_REDIRECT logs:
 example: c:\tomcat6\logs\isapi_redirect.log

If you have log files, but no errors, try to increase log level
in isapi_redirect.properties (see attachment)

At this point, you did everything like in the IIS HOWTO, checked
all permissions and path names twice, checked all IPs,
ports and urls twice and don't get any errors in log files,
but your browser still tells you "404 not found.".

General pitfall: blocked file isapi_redirect.dll
Solution: Simply, in Windows Explorer,
 right click isapi_redirect.dll -> properties
 and click on "UnBlock" button in the bottom.
My experience: Files from the Internet are protected by windows
 file protection and for example blocked for execution.
 Normally you would get a message box, which is asking the
 user, if you're really sure to execute this
 "potentially malicious file". By "unblocking" you solve the problem.

This "unblock" stuff took me hours to solve :-(

Just to be complete, here is hour scenario:
 - Windows with multiple IP addresses
 - IIS multiple web sites, one per IP, only one is for tomcat
   (in this example IP: 312.321.321.312,
    hostname: myservice.company.com)
 - Tomcat installation dir: c:\tomcat6
   (running as windows service)
 - the full website is redirected to Tomcat, no excludes
 - folder contents:
   C:\tomcat6\bin\win32\i386:
                         isapi_redirect.dll
                         isapi_redirect.properties
   C:\tomcat6\conf:
               uriworkermap.properties
               workers.properties

File contents:
--- isapi_redirect.properties --------------------------------------
# Configuration file for the Jakarta ISAPI Redirector
# The path to the ISAPI Redirector Extension, relative to the website
# This must be in a virtual directory with execute privileges
extension_uri=/jakarta/isapi_redirect.dll
# Full path to the log file for the ISAPI Redirector
log_file=C:\tomcat6\logs\isapi_redirect.log
# Log level (debug, info, warn, error or trace)
log_level=info
# Full path to the workers.properties file
worker_file=C:\tomcat6\conf\workers.properties
# Full path to the uriworkermap.properties file
worker_mount_file=C:\tomcat6\conf\uriworkermap.properties
--------------------------------------------------------------------

--- uriworkermap.properties ----------------------------------------
## Use www.foo.org as virtual host
#/www.foo.org/myapp/*=myworker
# match this host name or the IP from this host name with every path
# and redirect to myworker
/myservice.company.com/*=myworker
/312.321.321.312/*=myworker
--------------------------------------------------------------------

--- workers.properties  --------------------------------------------
# An entry that lists all the workers defined
worker.list = myworker
worker.myworker.type = ajp13
worker.myworker.host = 127.0.0.1
worker.myworker.port = 8009
--------------------------------------------------------------------

--- Tomcat server.xml ----------------------------------------------
...
<!-- Define an AJP 1.3 Connector on port 8009 ONLY on 127.0.0.1 -->
<Connector port="8009" protocol="AJP/1.3" address="127.0.0.1" />
...
--------------------------------------------------------------------

Hope this helps a bit solving your problems,
 Regards Martin (Software Developer and Tomcat fan)

PS: Would be good, if this "blocking stuff" would be placed
 on tomcat web site.

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to