You can experiment with the following alternative way of defining JkMount:

If you want to forward a certain request via mod_jk wo a worker X, you can do that by setting:

SetHandler jakarta-servlet
SetEnv JK_WORKER_NAME X

Now you can vary this by using SetEnvIf instead of SetEnv to make it dependant on runtime info, such as the request URL.

Furthermore mod_rewrite can set environment variables depending on parts of matches regular expressions.

So something like setting

SetHandler jakarta-servlet

inside <Location /rimNGit/> and inside <Location /rimNGit-tomcat2/>

and using mod_rewrite to set the environment variable JK_WORKER_NAME to "tomcat1" if the URL is /rimNGit/ and to "worker2" if it is /rimNGit-tomcat2/ (and of course rewriting the URL itself) should work.

Caution: Don't mix mapping via JkMount and via SetHandler/Environment for the same URLs. It might lead to unexpected results :)

If you don't like the name of the environment variable JK_WORKER_NAME, you can change it via

JkWorkerIndicator MyPrefferedVarName

Some of this is explained in

http://tomcat.apache.org/connectors-doc/reference/apache.html

(look for "JkWorkerIndicator"")

Regards,

Rainer

[EMAIL PROTECTED] wrote:
Hi,

I'm using a Tomcat 5.5.20 and an Apache 2.x. Using the mod_jk special request 
will be passed through the Tomcat. But now I have a problem with two Tomcat 
instances and the same context (the name is equal) in these instances.

Here is my workers.properties:

ps=\ worker.list=tomcat1, tomcat2 worker.tomcat1.port=8009 worker.tomcat1.host=localhost worker.tomcat1.type=ajp13 worker.tomcat2.port=9009 worker.tomcat2.host=localhost worker.tomcat2.type=ajp13


And here is my jk.conf

<IfModule mod_jk.c>
JkWorkersFile /etc/apache2/workers.properties JkLogFile /var/log/apache2/mod_jk.log # Log level to be used by mod_jk JkLogLevel error # The following line mounts all JSP files and the /servlet/ uri to tomcat JkMount /rimNG/* tomcat1 JkMount /rimNGj/* tomcat1 JkMount /rimNGuk/* tomcat1 JkMount /rimNGit/* tomcat2 </IfModule>

As you can see all rimNGit-URLs will be passed through tomcat2. Now I want to create a new URL (for example 
"rimNGit-tomcat2") that should be passed as "rimNGit" through tomcat2. At the same time 
all "rimNGit" request should be passed through tomcat1. Is that possible?

If I'm using mod_rewrite I could change the URL to rimNGit but in that case all 
requests would be passed through tomcat1 instead of tomcat2, am I right?

Regards
JasDA
_______________________________________________________________________
Viren-Scan für Ihren PC! Jetzt für jeden. Sofort, online und kostenlos.
Gleich testen! http://www.pc-sicherheit.web.de/freescan/?mc=022222


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

---------------------------------------------------------------------
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