Can I do a URL Rewrite to a different Tomcat insta

2019-06-06 23:17发布

问题:

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:

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.



回答2:

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.