Apache é um programa (software) que permite tornar um computador acessível via o protocolo HTTP, da Internet. É o servidor web mais utilizado atualmente no mundo e funciona em qualquer sistema operacional. Permite que linguagens de programação sejam agregadas a ele como módulos, o que gera mais segurança, estabilidade e performance.
TomCat é um servidor de aplicações Java para web, é um Contêiner Web. O Tomcat tem a capacidade de atuar também como servidor web/HTTP autônomo, ou pode funcionar integrado a um servidor web dedicado, como Apache httpd ou Microsoft IIS, ou ainda como parte integrante de um servidor de aplicações mais amplo, como JBoss AS, provendo os recursos de Java Servlet e JSP.
A integração do Apache com o TOMCAT é feita para que as páginas estáticas sejam executadas pelo Apache e as em JSP pelo contêiner TOMCAT, além do direcionamento das aplicações via APACHE, sendo o WebServer de acesso para as aplicações que estão no TOMCAT.
As páginas ESTÁTICAS serão executadas pelo APACHE (ganho de performance) e as páginas dinâmicas (JSP) executadas pelo contêiner TOMCAT.
A integração permite "esconder" as portas do TOMCAT, já que sua aplicação será chamada por uma URL na porta 80 e o APACHE sim, irá pegar sua aplicação no TOMCAT e mostrar.
Possibilidade de se realizar LOADBALANCER entre dois ou mais TOMCATs usando o APACHE como o WebServer que irá gerenciar essa carga e dividirá ela.
Quando o servidor é instalado, a configuração inicial do Tomcat contém um conector que recebe pedidos de HTTP utilizando AJP (Apache Jserv Protocol). Embora o Tomcat seja capaz de recebe pedidos de HTTP diretamente da rede, esse conector permite que o Tomcat receba pedidos de software em uma camada inferior. Por exemplo, o Tomcat pode receber pedidos de servidores da Web (como o Apache HTTP Server), servidores proxy e sistemas de balanceamento de carga que suportem os protocolos AJP.
O objetivo deste artigo é integrar os Servidores Apache e Tomcat, a validação deste tutorial foi feito na máquina virtual Ubuntu 8.0.Lembrando que esse tutorial pode ser utilizado para qualquer sistema operacional Linux/Unix.
2.Pré-Requisitos
Para o funcionamento da integração do TomCat com Apache que foi instalado no Ubuntu 8.0, serão necessários ter os seguintes serviços instalados:
· UBUNTU 8.0
· APACHE
· TOMCAT
· TOMCAT CONECTOR(MOD_JK)
· JDK+JRE(JAVA)
3.Instalação do Apache
Baixar o último SOURCE em www.apache.org.
Consideremos que estamos usando a versão 2.2.6 do APACHE, que está em um diretório de instalação de nosso servidor, vamos descompactar e instalar o mesmo:
# tar -xvf httpd-2.2.6.tar.gz
# cd httpd-2.2.6
# ./configure --prefix=/usr/local/apache2 --enable-ssl=/usr/local/ssl
# make
# make install
# /usr/local/apache2/bin/apachectl start
Pronto, o Apache está instalado com suporte a SSL no diretório padrão que definimos: /usr/local/apache2.
4.Instalação do TomCat e Java Baixar o último SOURCE em tomcat.apache.org/. Usar como padrão o diretório /usr/local para instalação do TOMCAT
# cd /usr/local
# tar -xvf apache-tomcat-6.0.14.tar.gz
# ln -s apache-tomcat apache-tomcat-6.0.14/
# vi /etc/profile
Adicionar as seguintes linhas no final do arquivo:
CATALINA_HOME=/usr/local/apache-tomcat
TOMCAT_HOME=/usr/local/apache-tomcat
export CATALINA_HOME TOMCAT_HOME CLASSPATH
Agora iremos instalar o JAVA, baixe a última versão do BIN JDK no site da SUN e coloque do diretório que iremos instalar ele, no caso /usr/local. Como ele será instalado com o "nome-versão", também iremos criar um LINK com o nome JAVA apontando para ele, o que também nos permite trocar de versão sem maiores problemas.
# chmod +x jdk-1_5_0_12-linux-i586.bin
# ./ jdk-1_5_0_12-linux-i586.bin
(seguir orientações da instalação - padrão, só YES e ENTER)
# ln -s java jdk1.5.0_12/
# vi /etc/profile
Adicionar as seguintes linhas no final do arquivo:
JAVA_HOME="/usr/local/java"
JRE_HOME="/usr/local/java/jre"
CLASSPATH="$JAVA_HOME:$JAVA_HOME/lib:$JRE_HOME/lib:."
MANPATH="$MANPATH:$JAVA_HOME/man"
JAVA_DOC="$JAVA_HOME/docs"
PATH="$PATH:$JAVA_HOME/bin:$JRE_HOME/bin"
export JAVA_HOME JRE_HOME CLASSPATH MANPATH JAVA_DOC PATH
Startando o Tomcat:
# /usr/local/apache-tomcat/bin/catalina.sh start
5.Integração Apache com TomCat
1º Baixar o Tomcat Connector para instalar o MOD_JK
http://archive.apache.org/dist/jakarta/tomcat-connectors/jk2/source/jakarta-tomcat-connectors-jk2-2.0.4-src.tar.gz
2º Descompactar e instalar# tar -xzvf tomcat-connectors-1.2.25-src.tar.gz
# cd tomcat-connectors-1.2.25-src
# cd native/
# ./configure --with-apxs=/usr/local/apache2/bin/apxs
# make
# make install
3º Configurar o MOD_JK
# vim /usr/local/apache2/conf/httpd.conf
Acrescentar a linha abaixo:
LoadModule jk_module modules/mod_jk.so
4º Inicializar o Apache
# /usr/sbin/apachectl start
6.Configuração do TOMCAT
1º Mudar o arquivo server.xml dentro de /usr/local/apache-tomcat/conf/
# vim /usr/local/apache-tomcat/conf/server.xml
Procurar por:
Adicionar a propriedade "jvmRoute="tomcat1"" e ficará assim:
2º Reiniciar o TOMCAT:
# /usr/local/apache-tomcat/bin/catalina.sh
7.Configuração do Apache
1º Criar dois arquivos, um para configurarmos a comunicação com o TOMCAT e outro para configurações básicas do MOD_JK.
# vim /usr/local/etc/apache2/conf/workers.properties
Adicionar o conteúdo abaixo:
#
# workers.properties
#
# In Unix, we use forward slashes:
ps=/
# list the workers by name
worker.list=tomcat1(nome configurado no arquivo server.xml do TOMCAT)
# ------------------------
# First tomcat server
# ------------------------
worker.tomcat1.type=ajp13
worker.tomcat1.host=localhost(nome do servidor onde temos o tomcat)
worker.tomcat1.port=8009
worker.tomcat1.lbfactor=50
worker.tomcat1.cachesize=10
worker.tomcat1.cache_timeout=500
worker.tomcat1.socket_keepalive=1
worker.tomcat1.socket_timeout=300
# Specify the size of the open connection cache.
#worker.tomcat1.cachesize
#
# Specifies the load balance factor when used with
# a load balancing worker.
# Note:
# ----> lbfactor must be > 0
# ----> Low lbfactor means less work done by the worker.
worker.tomcat1.lbfactor=100 //Definindo que toda a carga será usada apenas para um TOMCAT, é o nosso caso.
#
# END workers.properties
8.Configurar o arquivo tomcat.conf
# vim /usr/local/apache2/conf/tomcat.conf
--> Adicionar o seguinte conteúdo ao arquivo criado:
JkWorkersFile /usr/local/apache2/conf/workers.properties
JkLogFile /usr/local/apache2/logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
JkMount /examples/servlet/* tomcat1
JkMount /examples/* tomcat1
JkMount /examples/jsp/* tomcat1
JkMount /*.jsp tomcat1
9.Adicionar o arquivo "tomcat.conf" no "httpd.conf" do Apache.
# vim /usr/local/apache2/conf/httpd.conf
Adicionar a seguinte linha no arquivo:
Include conf/tomcat.conf
10.Reiniciar o APACHE # /usr/local/apache2/bin/apachectl start 11.Testando a integração
Agora ao invés de acessarmos o endereço do TOMCAT
http://localhost:8080/
Iremos acessar:
http://localhost/examples/
IMPORTANTE: Arquivo: /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 sl02.xxxx.br sl02 localhost.localdomain localhost intranet
172.18.0.29 sl09.xxxx.br sl09
Referências a:
http://www.vivaolinux.com.br/artigo/Integracao-Apache-=%3E-Tomcat/?pagina=5
http://www.vivaolinux.com.br/dica/Integracao-simples-do-Apache-2-com-Tomcat-5
Nenhum comentário:
Postar um comentário