Могу ли я переписать URL-адрес для другого экземпляра Tomcat?

Можно ли использовать переписывание URL Tuckey для перезаписи на другой Tomcat пример? У меня это работает с использованием crossContext="true" перезаписи в другой сервлет на том же экземпляре tomcat, но на нашем рабочем сервере работает несколько экземпляров tomcat, и я хочу вместо этого переписать в один из них?

Если невозможно использовать фильтр перезаписи URL, есть ли другой способ сделать это?

Спасибо.


person RodeoClown    schedule 23.03.2010    source источник
comment
У вас есть Apache перед вашим экземпляром Tomcat?   -  person Taylor Leese    schedule 24.03.2010
comment
Я делаю на производстве, а не на своем экземпляре разработки   -  person RodeoClown    schedule 24.03.2010
comment
Если в производстве используется Apache, вам, вероятно, следует пойти по пути mod_proxy или mod_jk и просто начать использовать Apache в среде разработки.   -  person Taylor Leese    schedule 24.03.2010
comment
Я надеялся избежать этого, если это возможно. Это не прямое переписывание - я использовал значения из исходного сервлета для добавления в строку запроса.   -  person RodeoClown    schedule 24.03.2010


Ответы (2)


Вы не можете просто переписать в другой экземпляр. Вам нужно либо получить содержимое из другого экземпляра (например, используя `новый URL("http://localhost:8081/foo").openConnection()....´) или перенаправить клиента с помощью 30-кратного перенаправления. Если у вас есть прокси-сервер перед вашими Tomcats, вы можете настроить его для разрешения перенаправления напрямую, а не отправлять его клиенту.

person sfussenegger    schedule 23.03.2010

Если вы хотите проксировать запрос, вам нужно использовать mod_jk или mod_proxy в Apache для проксирования запроса на другую машину. Если у вас все в порядке с перенаправлением, то он должен работать нормально только с перезаписью URL.

person Taylor Leese    schedule 23.03.2010
comment
Если я правильно понимаю вопрос, Apache не подходит, поскольку запрос уже был перенаправлен экземпляру Tomcat. Если бы можно было перенаправить прямо на правильный экземпляр с прокси, вопрос в любом случае был бы более или менее устаревшим. - person sfussenegger; 24.03.2010
comment
Я имел в виду, что ему нужно будет поставить Apache перед своим экземпляром Tomcat, а затем обработать проксирование с помощью Apache. - person Taylor Leese; 24.03.2010