[OT] Subdomínios DNS e aplicações Tomcat

474 views
Skip to first unread message

Bruno Simioni

unread,
Nov 26, 2009, 7:26:31 PM11/26/09
to slack-u...@googlegroups.com
Olá senhores, boa noite.

Tenho uma dúvida conceitual e técnica, a respeito de subdomínios DNS e aplicações web, no container de aplicações web Apache Tomcat.

O contexto do problema dá-se por uma aplicação web hospedada em um servidor com ip válido, e essa aplicação deve estar disponível através de um subdomínio do domínio principal.

Tenho o seguinte domínio principal:
www.abc.com.br, onde abc.com.br aponta para um site hospedado em qualquer servidor.

Tenho um servidor Tomcat com uma aplicação funcional em um outro servidor de ip válido:
123.123.123.123/aplicacao (redirecionado através de um servidor Apache HTTP).

Preciso de uma solução para a seguinte situação:
aplicacao.abc.com.br deve resolver para 123.123.123.123/aplicacao

Como fazer isso?

Agradeço a atenção,

Abraços.

Bruno Simioni.

Ananias Filho

unread,
Nov 26, 2009, 8:32:40 PM11/26/09
to slack-u...@googlegroups.com
no servidor apache habilite o modulo mod_proxy e redirecione o aplicacao.abc.com.br/aplicacao para o ip do seu tomcat

ex.
<VirtualHost *:80>
   ProxyPreserveHost On
   ProxyPass / http://"IP do Server TomCat"
   ProxyPassReverse / http://"IP do Server TomCat"/
   ServerName aplicacao.abc.com.br
</VirtualHost>

linha 1 diz q eh para responder na porta 80

2 - habilita o proxy (de forma preservada)
3 - diz q a raiz do sistema eh no ip do tomcat
4 - o reverso tb sera o ip do tomcat
5 - por qual HOSTNAME sera aplicada a funcao a seguir

ok?




2009/11/26 Bruno Simioni <brunos...@gmail.com>



--
kram3r

Bruno Simioni

unread,
Nov 27, 2009, 6:36:42 AM11/27/09
to slack-u...@googlegroups.com
Ananias,

Primeiramente, obrigado pela sua atenção e pela sua resposta. Vamos acertar os ponteiros, pra ver se você me entendeu, e se eu entendi sua resposta.

O meu cenário, novamente, é o seguinte:

Domínio: www.abc.com.br, que redireciona para um ip válido, para um site que está fora da minha área de atuação.

Minha aplicação: http://123.123.123.123/aplicacao, com ip válido, hospedado em uma outra máquina.

Meu problema:
Criei um subdomínio http://aplicacao.abc.com.br que redireciona para um ip válido (123.123.123.123), mas que me faz, obrigatóriamente, que eu tenha que acessá-la via: http://aplicacao.abc.com.br/aplicacao, pois o subdomínio só redireciona para ip, não para url.

Gostaria de resolver esse problema de digitar "aplicacao" duas vezes na url, fazendo com que um subdomínio DNS aponte para uma url, ao invés de um ip.

Com o problema solucionado, eu poderia digitar:
http://aplicacao.abc.com.br, que a requisição seria redirecionada para http://123.123.123.123/aplicacao.

Na sua resposta, eu não entendi qual servidor apache que você está falando pra eu habilitar o mod_proxy: é o servidor apache que hospeda o domínio www.abc.com.br, ou o servidor apache que faz o redirecionamento (mod_jk) das requisições de 123.123.123.123/aplicacao para 123.123.123.123:8080/aplicacao ?

Aguardo,

Obrigado!

Bruno Simioni.

2009/11/26 Ananias Filho <kra...@gmail.com>

Ananias Filho

unread,
Nov 27, 2009, 4:46:43 PM11/27/09
to slack-u...@googlegroups.com
Agora entendi melhor.
Voce não tem privilégios no Servidor Apache (www.abc.com.br)
somente tem privilégio no servidor (tomcat) da sua aplicação correto?

se sim, verifica se o tomcat não poderia fazer um alias de url.

se não, creio que vc instalando um webserver apache ou lighttpd (esse é mais leve e mais rápido) para fazer o redirecionamento utilizando o mod_proxy.

ex.
Tomcat - porta 8080
Webserver (apache ou tomcat) - porta 80

quando solicitar o endereco aplicacao.abc.com.br  ao webserver na porta 80, ele ira redirecionar (de forma transparente para o usuario - ele nao vai ver essas mudancas) para o tomcat na porta 8080/aplicacao.

para vc ter uma ideia mais clara.

tenho uma maquina com dois subdominios
um.dominio.com.br
dois.dominio.com.br

tudo no um.dominio.com.br fica no apche da vida.
tudo que eh requisitado no dois.dominio.com.br, é levado para um tomcat na mesma maquina rodando na porta 8080 no diretorio /aplicacoes/financeiro/erp
quando eh requisitado ao meu servidor o dois.com.br, o usuario ira ver a mesma coisa que digitar
http://ipdoservidor:8080/aplicacoes/financeiro/erp

isso dai q eu fiz, foi utilizando o mod_proxy.

desconheco se o tomcat faz essas coisas de proxy ou alias de url (que eh exatamente isso que vc quer).
creio que utilizar o tomcat + lighttpd seria a solucao mais bacana

mas se precisar de alguma coisa mandae q a gente ta apostos.


2009/11/27 Bruno Simioni <brunos...@gmail.com>



--
kram3r

Bruno Simioni

unread,
Nov 27, 2009, 6:16:24 PM11/27/09
to slack-u...@googlegroups.com
Ananias, novamente, obrigado pela atenção!

Sim, agora estamos alinhados na conversa. O servidor Apache (www.abc.com.br) não está no meu domínio, mas sim o servidor 123.123.123.123/aplicacao.

Nele (123.123.123.123: Slackware 12.2 + Apache HTTP + Apache Tomcat), eu já uso o mod_jk, fazendo o redirecionamento, partindo do Apache HTTP, para o Apache Tomcat, da seguinte forma:

http://123.123.123.123:80/aplicação --mod_jk--> 123.123.123.123:8080/aplicacao

Esse redirecionamento funciona, mas o mod_jk, até onde eu conheço, faz a interpretação do que vem depois do nome DNS ou ip, ou seja ,ele interpreta a parte que já é redundante, em:
http://aplicacao.abc.com.br/aplicacao.

Enfim, vou dar uma estudada no mod_proxy pra ver se eu consigo resolver esse problema com essa ferramenta.

Finalizando, obrigado novamente!

Abraços,

Bruno Simioni.

2009/11/27 Ananias Filho <kra...@gmail.com>
Reply all
Reply to author
Forward
0 new messages