En écrivant cet article, j'ai tellement galéré à installé mod_jk, que j'ai basculé vers une installation avec mod_proxy, un autre module apache qui permet de conserver apache en frontal et de faire du reverse proxy sur tomcat.
Cet article est donc obsolète, du moins dans un premier temps je vous conseille uen configuration avec mod_proxy plus simple à mettre en place.
Objectifs
L'objectif de cet article est de présenter l'installation d'un Apache Tomcat derrière un serveur Apache HTTP
via le connecteur mod_jk.
Cette installation est utile dans le cadre d'une application web Java pour laquelle
on souhaite fournir une url simplifiée aux utilisateurs.
Principe
Le principe est de permettre le dialogue entre votre serveur Apache frontal, et votre serveur Apache Tomcat afin
de faciliter la connexion de ces outils et permettre une redirection transparente de votre application Web.
Le chemin logique sera le suivant :
Requete HTTP -> Serveur Apache HTTP -> Module JK de Apache HTTP -> Application Web Java sous Tomcat
Prérequis :
Avoir installé Apache-Tomcat
Avoir installé Apache HTTP Server
Installation :
Pour ce faire, ouvrer un fichier dans /etc/apache2 nommé workers.properties
Puis, ajoutez y le sligne suivantes pour indiquer à Apache où setrouve votre répertoire Tomcat :
workers.tomcat_home=/usr/local/apache-tomcat-6.0.20 workers.java_home=/usr/local/java-6-openjdk
ps=/
worker.list=default
worker.default.port=8009
worker.default.host=localhost
worker.default.type=ajp13
worker.default.lbfactor=1
Pour ce faire ajoute run fichier dans le répertoire /etc/apache2/conf.d nommé jk.conf
<ifmodule mod_jk.c>
JkWorkersFile /etc/apache2/workers.properties
JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel error
</ifmodule>
Pour ce faire il faut créer un fichier de VirtualHost,
donc éditer un fichier monvirtualhost dans /etc/apache2/sites-available
<virtualhost mondomaine.fr>
JkMount /*.jsp default
ServerName mondomaine ServerAdmin moi@mondomaine.com
DocumentRoot /usr/local/apache-tomcat-6.0.20/webapps/monapplication ErrorLog /var/log/apache2/monapplication-error.log
CustomLog /var/log/apache2/monapplication-access.log common
<directory /usr/local/apache-tomcat-6.0.20/webapps/monapplication>
Options -Indexes
</directory>
</virtualhost>
http://mondomaine.fr
Normalement, votre serveur Apache recevra la requête puis la redirigera
vers la racine de votre application web Java hébergée par Tomcat.