views:

157

answers:

2

Is is possible to use Tuckey's URL Rewrite to rewrite to a different Tomcat instance? I have it working using crossContext="true" rewriting to a different servlet on the same tomcat instance, but our production server has multiple tomcat instances running and I want to rewrite to one of them instead?

If it's not possible using the URL Rewrite filter, is there another way of doing it?

Thanks.

+1  A: 

If you want to proxy the request then you need to use mod_jk or mod_proxy in Apache to proxy the request to a different machine. If you are OK with issuing a redirect then it should work fine with just URL Rewrite.

Taylor Leese
If I understand the question correctly, Apache isn't an option as the request was already forwarded to a Tomcat instance. It it would be possible to redirect directly to the correct instance from a proxy the question would be more or less obsolete anyway.
sfussenegger
I was implying that he would need to put Apache in front of his Tomcat instance and then handle the proxying with Apache.
Taylor Leese
+1  A: 

You can't simply rewrite to another instance. You'd either have to fetch the content from another instance (e.g. using `new URL("http://localhost:8081/foo").openConnection()....´) or redirect the client using a 30x redirect. If you have a proxy in front of your Tomcats, you might be able to configure it to resolve the redirect directly instead of sending it to the client.

sfussenegger