Quero executar um aplicativo Tomcat por meio de um URL de site comum, como www.xyz.com
. Gostaria que a raiz desse domínio atue como o diretório base do aplicativo Web, para que cada solicitação se www.xyz.com/a/b/c
torne www.abc.com:8080/myApp/a/b/c
. Idealmente, eu seria capaz de fazer isso de forma transparente e apenas para determinados aplicativos da web.
www.abc.com:8080
ainda deve responder aos pedidos.
O que preciso fazer para que isso aconteça?
apache-2.2
tomcat6
Stefan Kendall
fonte
fonte
Um método mais simples de fazer isso é adicionar uma entrada de host virtual no seu arquivo conf do Apache. Geralmente localizado em / etc / httpd / conf, adicione algo assim no final da seção Host virtual:
Reinicie seu serviço Apache e pronto.
fonte
Você pode usar o mod_rewrite no Apache para fazer isso. Carregue mod_rewrite no seu Apache e no seu vhost www.xyz.com adicione a seguinte regra:
RewriteRule ^/(.*) http://www.abc.com:8080/myApp/$1
Isso deve fazer a mágica.
Mais informações sobre mod_rewrite aqui .
EDIT : Para manter o nome do site nos navegadores, use mod_proxy também adicionando apenas um [P] no final do RewriteRule:
RewriteRule ^/(.*) http://www.abc.com:8080/myApp/$1 [P]
Isso forçará o Apache a agir como um proxy para esse URL em vez de apenas reescrevê-lo.
fonte
www.xyz.com
do lado do usuário.