• Feed RSS
0
Debido a la reciente reinstalación de Ubuntu 10.04 en el servidor que tengo en casa me he visto en la obligación de volver a darle una vuelta a la configuración de todos los servicios que tenía en funcionamiento. Uno de ellos es la configuración de Apache para que sirva aplicaciones instaladas en un Tomcat 6. Aquí os dejo un resumen.

Suponiendo que tenemos configurado correctamente el Tomcat en la máquina nos centraremos en la configuración de Apache.

Paso #1: Instalar el modulo mod_jk.
 sudo apt-get install libapache2-mod-jk
Paso #2: Editar el fichero de "workers" para dar de alta la conexión de nuestro Tomcat.
sudo gedit /etc/libapache2-mod-jk/workers.properties
El contenido del fichero sería el siguiente:
workers.java_home=/usr/lib/jvm/java
ps=/
worker.list=ajp13_worker
worker.ajp13_worker.port=8009
worker.ajp13_worker.host=localhost
worker.ajp13_worker.type=ajp13
worker.ajp13_worker.lbfactor=1

worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=ajp13_worker
En el fichero anterior se supone que el puerto de conexion AJP es el 8009 y el home de la instalación de la máquina virtual es /usr/lib/jvm/java. Para detectar cual es el puerto del protocolo AJP. Podemos editar el fichero ${TOMCAT_HOME}/conf/serve.xml y buscar la línea que en mi caso sería:

<Connector port="8009" protocol="AJP1.3"
Paso #3: Configurar el módulo mod_jk en Apache 
sudo gedit /etc/apache2/mods-available/jk.load
En este fichero se definen cosas como:
  • Ruta al fichero de workers
  • Ruta al fichero de log, y formato de trazas
Su contenido sería el siguiente:
LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so

JkWorkersFile /etc/libapache2-mod-jk/workers.properties
JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
Paso #4: Por último queda el mapear que urls queremos que se redirijan a Tomcat para esto necesitamos editar el fichero del site que tengamos habilitado. Para el ejemplo dejo el de por defecto.
sudo gedit /etc/apache2/sites-enabled/000-default
Añadir tantas líneas como urls se necesiten mapear, dentro de la entrada <VirtualHost:80>  con el siguiente formato:
JkMount /<APPLICATION_CONTEXT>/* ajp13_worker
Paso #5: Reiniciamos el servicio de Apache y ya podremos acceder a nuestra aplicación a través de apache.

Espero que os sirva hasta la próxima.