Configurando Apache2 e Tomcat com mod_jk no Linux

Após atualizado para o Java 7 na semana passada, a missão agora é configurar o servidor web Apache2 com Tomcat para rodar um sistema Struts 1.x no Linux. Como eu já tinha experiência dessa configuração em ambiente Windows (e recomendo o excelente tutorial do Diego Plentz), tentei fazer o mesmo só que no ambiente Linux.


Ambiente

  • Sistema operacional Linux Knoppix 7.0
  • Apache 2 HTTP Server
  • Apache Tomcat 6.x
  • JDK 1.7.0

Instalando os recursos necessários

Bom, primeiramente vamos instalar o Apache2 e mod_jk! O Apache2 já deve vir instalado na maioria das distribuições Linux, mas mesmo assim vamos executar o seguinte comando para instalá-lo e para também instalar o mod_jk:


apt-get install apache2 libapache2-mod-jk

No meu caso, o Apache2 ficou instalado no diretório /etc/apache2/ e o mod_jk em /etc/libapache2-mod-jk/.

Algumas configurações serão necessárias, mas vamos instalar o Java e o Tomcat primeiro.

Para instalar o Java recomendo seguir estes passos e após finalizado vamos para a instalação do Tomcat. O Tomcat pode ser instalado através do apt-get também, porém eu prefiro fazer da seguinte maneira:

Baixe o Core do Tomcat 6 do site oficial (apache-tomcat-6.0.35.tar.gz) e descompacte com o comando:


tar -xvxf apache-tomcat-6.0.35.tar.gz

Mova para o diretório de sua preferência (no meu caso, coloquei em /usr/share/tomcat6). Pronto, tudo que você precisa está instalado, só precisamos agora configurá-los! rs

Configurando tudo

Vamos começar pelo workers do mod_jk. Verifique se o arquivo /etc/libapache2-mod-jk/workers.properties está com as seguintes configurações:


workers.tomcat_home=/usr/share/tomcat6
workers.java_home=/usr/lib/jvm/jdk1.7.0

worker.list=ajp13_worker
worker.ajp13_worker.port=8009
worker.ajp13_worker.host=localhost
worker.ajp13_worker.type=ajp13
worker.ajp13_worker.lbfactor=1

Agora vamos para o Apache2, verifique se em /etc/apache2/mods-available/jk.conf estão configurados os seguintes itens:


JkWorkersFile /etc/libapache2-mod-jk/workers.properties
JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel info

O próximo passo é configurar o arquivo /etc/apache2/sites-enable/000-default para deixá-lo mais ou menos assim:


<VirtualHost *:80>
ServerAdmin webmaster@localhost

DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined

# Aqui você adiciona os PATH que deseja
JkMount /teste ajp13_worker
JkMount /teste/* ajp13_worker
</VirtualHost>

Agora só falta configurar o Tomcat através do arquivo /usr/share/tomcat6/conf/server.xml e localize o seguinte o trecho:


<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">

E substitua o appBase=”webapps” para appBase=”/var/www” e inclua uma linha que deverá ficar assim:


<Host name="localhost" appBase="/var/www" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">

<DefaultContext reloadable="true"/>

Pronto! Agora basta iniciar (ou reiniciar) o Apache2 e depois o Tomcat.

Um comentário sobre “Configurando Apache2 e Tomcat com mod_jk no Linux

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s