Ocultar as portas na url de uma aplicação tomcat

1

Eu configurei tomcat 6 em um servidor com várias instâncias diferentes que são executadas em portas diferentes

For Eg:

     http://10.XXX.XXX.XXX:8080/myAPP1
     http://10.XXX.XXX.XXX:8088/myAPP2
     http://10.XXX.XXX.XXX:8082/myAPP3

e assim por diante ...

Esses URLs estão disponíveis para dois usuários que usam esses e outros aplicativos Agora eu quero esconder as portas em que cada um dos aplicativos estão sendo executados ...

Para que o usuário possa ver apenas algo assim

http://10.XXX.XXX.XXX/myAPP1
http://10.XXX.XXX.XXX/myAPP2
http://10.XXX.XXX.XXX/myAPP3

O que é necessário para isso?

Eu consegui isso para um URL (ou seja, uma porta) usando as regras de firewall e redirecionar a solicitação na porta HTTP 80 para a porta que tomcat está ouvindo.

Mas quero que esse padrão apareça para todos os URLs ...

Como posso fazer isso?

Specs

HOST M / C: 64 bits

SO: Linux Redhat

Tomcat: 6.0

    
por S.M.09 29.03.2012 / 11:09

2 respostas

3

Instale um servidor da Web real, como Apache ou nginx, e use os recursos de proxy integrados ( mod_proxy no Apache e HttpProxy módulo principal no nginx) para fazer proxy do caminho para o aplicativo Tomcat apropriado em execução em um alto porta.

    
por 29.03.2012 / 11:26
3

Instale o apache e use o mod_rewrite para fazer proxy dos pedidos para os aplicativos do backend tomcat.

Aqui está um trecho de exemplo da configuração do apache que deve fazer isso:

RewriteEngine on
#Optional - setup a log, useful for debugging
#RewriteLog logs/rewrite.log
#RewriteLogLevel 3

RewriteRule ^/myAPP1(.*) http://10.XXX.XXX.XXX:8080/myAPP1$1 [P,L]
RewriteRule ^/myAPP2(.*) http://10.XXX.XXX.XXX:8088/myAPP2$1 [P,L]
RewriteRule ^/myAPP3(.*) http://10.XXX.XXX.XXX:8082/myAPP3$1 [P,L]

Veja algumas informações úteis sobre mod_rewrite: link

link

    
por 30.03.2012 / 07:00