Apache mod_proxy com Jetty

Pessoal, alguem poderia me dar uma ajuda sobre como configurar o apache redirecionando para o jetty?

Eu gostaria da seguinte situação:

http://www.meusite.net - Página inicial, uma página html normal

http://www.webapp.meusite.net - Redirecionando para a aplicação no jetty, o qual é: http://www.meusite.net:8080/webapp

Todos os tutoriais que eu achei não consegui resultados, já reverti todas as configurações pois não tiveram efeito.

Fico no aguardo, qualquer tutorial ou dicas agradeço!

Esse post mostra como se colocar um servidor Tomee no ec2 na porta 80. Uma das coisas que faço é criar um virtual host no httpd.

Obrigado pela dica, mas eu gostaria de algo mais focado no jetty e manual, estou atualmente alugando um VPS bartinho ((5 doletas) só para testes.

O problema que todos os tutoriais que segui eram para tomcat (tentei utilizando o server tomcat tbm) mas no final nao conseguia o que queria.

Mesmo assim obrigado, vou aguardar mais sugestões!

PS: O SO do VPS é debian 6, com apache 2, tomcat 7 e jetty 9, jdk 1.7

O httpd não se importa com qual servidor java vc usa. :O)
O post vale pra qualquer servidor, java ou não. A única coisa que o httpd faz é a ponte entre uma chamada localhot:80 e localhost:8080.
O post é longo, mas uma das últimas coisas que ele tem é a configuração dessa ponte.

Uma dúvida que está pairando, quero ver se isso é o meu problema.

Já configurei inumeras vezes um virtual host no apache, e nenhum jeito funcionou até agora. Estou tentando criar um simples teste.meusite.net e a url não é acessível!

A configuração do apache está assim:

NameVirtualHost *:80
<VirtualHost *:80>
ServerName meusite.net
DocumentRoot /var/www/
</VirtualHost>

<VirtualHost *:80>
ServerName teste.meusite.net
DocumentRoot /var/www/teste/
</VirtualHost>

No /etc/hosts está assim:

127.0.0.1               localhost.localdomain localhost
198.xx.xxx.xxx                     meusite.net
198.xx.xxx.xxx  teste.meusite.net

Eu preciso por acaso utilizar o painel de controle do meu VPS e nele criar um novo dominio com cname teste.meusite.net ou somente a configuração do apache é suficiente para que a url seja acessível?

Está complicado essa configuração!!!

Oi,

Fiz um teste e funcionou com uma configuração bem semelhante à sua:

[code]NameVirtualHost *:80

#Default Host
<VirtualHost *:80>
ServerName localhost
DocumentRoot “C:/opt/Apache2.2/htdocs”

<VirtualHost *:80>
ServerName virtualhost.localhost
DocumentRoot “C:/opt/Apache2.2/htdocs/virtual_host_root”
[/code]

Onde você colocou a configuração? Seria no arquivo http-vhosts.conf ? Se for, lembre-se que o “Include” desse arquivo por padrão está comentado na configuração principal (http.conf)

Uma dica é chamar o executável do Apache (bin/httpd) com a opção -S (S maiusculo) , nesse modo ele vai apenas listar a configuração de virtual hosts para você conferir se enxergou tudo direitinho.

gomesrodm, Então, o meu VPS utiliza o debian 6 como SO.

Logo, o apache no debian nao tem configuração no httpd.conf e sim no /etc/apache2/apache2.conf

Eu adicionei os modules de proxy por garantia…

bem, agora essa configuração que citei acima eu realize então no arquivo apache2.conf

O que eu realmente não entendi até o momento é o seguinte. Eu registrei um dominio: www.meusite.net (exemplo)
E este dominio está apontando para o ip do meu VPS: 198.xxx.xxx.xxx
Está funcionando ok.

Bom, dos infinitos tutoriais que eu li sobre proxy reverso, virtual hosts, mod_proxy_http, etc em nenhum deles afirmava se era necessário que eu criasse no meu registro de dns os subdominos!
Ou seja, se eu quiser acessar uma url do tipo: teste.meusite.net, eu preciso primeiro ir no painel de controle e registrar o subdomino teste? Ou simplesmente posso configurar o apache no meu servidor para reconhecer a url?

A minha idéia é que eu possa criar urls amigáveis para aplicações web do tomcat ou jetty, só que até o momento nem mesmo um simples virtual host consegui rodar!

Sacou? Eu estou realmente perdido nisso.

Meu objetivo é criar uma camada com apache fazendo os redirecionamentos e gerenciando os subdominios, direcionando estes para minhas webapps, sem que seja necessario que eu digite por exemplo:

www.meusite.net:8080/App1
www.meusite.net:8080/App2
www.meusite.net:8080/App3

E sim:

www.app1.meusite.net
www.app2.meusite.net
www.app3.meusite.net

Conseguiu entender meu caso? Consegui te explicar melhorar para que possa me ajudar? Obrigado!

Na verdade tem três passos distintos aí:

b[/b]
O primeiro é fazer a configuração do Virtual Host no Apache funcionar.
Para isso, você não precisa mexer nada no DNS pois os testes podem ser feitos usando o arquivo de hosts.
(A não ser que queira fazer o passo (2) primeiro, aí não vai precisar forçar nenhum endereço no arquivo de hosts)

Detalhe importante, não sei se é isso que vc está fazendo: tem que alterar o arquivo de hosts na máquina de onde você vai rodar o browser durante o teste, não no servidor.
Ou seja, o client é quem vai usar os registros desse arquivo na hora de descobrir o IP do servidor… para saber se o arquivo de hosts está funcionando é só dar um ping da máquina cliente, ele deverá resolver o IP.
E não pode passar por proxy, senão ele é quem não vai saber resolver o nome do subdomínio!

b[/b]
A segunda parte é o DNS.
Não precisa mexer no registro do domínio propriamente dito, mas precisa mexer na configuração do servidor DNS responsável pelo domínio.
Ele funciona com uma base de dados mapeando cada host do domínio para um IP, mais ou menos assim:

DOMINIO meusite.net
www         - 198.xxx.xxx.xxx     // IP do host "www"
@MX         - 198.xxx.xxx.yyy     // Registro especial, é o IP do servidor de email onde são entregues as mensagens usuario@meusite.net
www.app1 - 198.xxx.xxx.xxx     // Outro host, apontando para o mesmo IP do www
www.app2 - 198.xxx.xxx.xxx     // Outro host, apontando para o mesmo IP do www
/// etc,,,,

Então o que falta é incluir os registros adicionais, para que qualquer usuário na Internet possa resolver para o IP apropriado. Solicite essa configuração para o seu provedor de serviços.

b[/b]
Configurar o Proxy Reverso para direcionar para as portas corretas.
Isso é fácil, depois que o virtual host estiver funcionando é só colocar as diretivas do módulo Proxy dentro da tag