Como faço para redirecionar do Apache para Tomcat?
Pergunta
Eu estou trabalhando em meu primeiro site Java. Estou executando o Apache Tomcat na porta 8080, e Apache HTTPD na porta 80. A URL atual que posso acessar o site em é (por exemplo) 123.4.5.6:8080. Quero Remover o número da porta a partir do URL antes de apontar o domínio no novo IP.
No momento eu só estou usando Apache para phpmyadmin, no entanto Estou pensando em usá-lo para scripts CGI e outras coisas uma vez que eu descobrir mod_jk
etc ... Então eu não quer mudar a porta do Tomcat a 80 e desligue Apache.
Espero que este sentimento marcas.
Solução
A maneira correta de fazer as coisas é deixar Apache a 80 e Tomcat em 8080 e usar um plug-in (de preferência mod_proxy) para Tomcat de proxy do Apache. mod_proxy só iria levá-lo 10 minutos para configurar.
Este how-to é muito simples de seguir.
Outras dicas
A maneira usual isso é feito, como você já mencionado, é usar mod_jk
de Apache HTTPD de transmitir que o conteúdo que você quer ser processado pelo Tomcat.
Há um rápida HowTo em tomcat.apache.org. Você precisa fazer o seguinte:
- Copiar
mod_jk.so
no diretório módulos apropriados para o Apache HTTPD. - Criar um
workers.properties
arquivo de configuração -
httpd.conf
do Em Apache HTTPD, adicione uma seção paramod_jk
configure. - Assegurar que Tomcat está configurada para aceitar o protocolo
mod_jk
, que é geralmente na porta 8009.
As linhas em httpd.conf
com JkMount
:
JkMount /examples/* worker1
dizer Apache HTTPD que os pedidos devem ser encaminhados para Tomcat.
Tanto as respostas votos acima são boas, mas eu prefiro muito mais mod_proxy
sobre mod_jk
. Não há nenhuma instalação extra para fazer para mod_proxy, mod_jk
ao contrário, ea instalação é muito mais fácil. mod_jk
lhe dá mais controle sobre afinação detalhada dos parâmetros do Tomcat, mas se você quer apenas um simples redirecionamento do Apache para Tomcat, mod_proxy
é o caminho a percorrer.
Se você quiser conteúdo estático para ser servido pelo Apache Tomcat, em vez de você deve usar mod_jk: http://tomcat.apache.org/tomcat-6.0-doc/proxy-howto.html
E o que dizer SSL -? Se queremos Apache para lidar com HTTPS, porque é mais rápido, em seguida, java / Tomcat
você deve configurar o tomcat usando este link. para tomcat 7 http://tomcat.apache.org/tomcat-7.0-doc/proxy -howto.html