En esta configuración el servidor web Apache es el encargado de recibir y devolver todas las peticiones HTTP de los usuarios. Apache se encarga de redirigir las peticiones necesaria a Tomcat, mientras que los archivos estáticos y similares los sirve Apache directamente.
Para crear esta guía nos hemos basado en la plantilla cloud Ubuntu 13.04 x64 que ofrecemos en nuestro servicio Cloud VPS.
1 – Preparativos
Antes de empezar, tienes que hacer acceder a tu servidor mediante SSH. La guía asume que estás logueado como root.
En un nuevo servidor, lo primer que debes hacer siempre es actualizar los paquetes, para ello:
<code>apt-get -y update apt-get -y upgrade</code>
Y dado que casi siempre se instalará un nuevo kernel, reiniciamos el servidor para empezar a usar el nuevo kernel:
<code>shutdown -r now</code>
2 – Instalación de Tomcat
Instalamos Tomcat 7:
<code>apt-get -y install tomcat7</code>
Ahora, para verificar que Tomcat funciona correctamente, creamos una aplicación de prueba. Primero creamos la estructura de directorios:
<code>cd /var/lib/tomcat7/webapps mkdir helloworld</code>
Y por último, creamos un archivo index.jsp:
<code>nano helloworld/index.jsp</code>
En el que pegaremos el siguiente código:
<code class=" language-php"><span class="token markup"><span class="token tag"><span class="token punctuation"><</span>HTML<span class="token punctuation">></span></span></span> <span class="token markup"><span class="token tag"><span class="token punctuation"><</span>HEAD<span class="token punctuation">></span></span></span> <span class="token markup"><span class="token tag"><span class="token punctuation"><</span>TITLE<span class="token punctuation">></span></span></span>Hello World<span class="token markup"><span class="token tag"><span class="token punctuation"></</span>TITLE<span class="token punctuation">></span></span></span> <span class="token markup"><span class="token tag"><span class="token punctuation"></</span>HEAD<span class="token punctuation">></span></span></span> <span class="token markup"><span class="token tag"><span class="token punctuation"><</span>BODY<span class="token punctuation">></span></span></span> <span class="token markup"><span class="token tag"><span class="token punctuation"><</span>H1<span class="token punctuation">></span></span></span>Hello World<span class="token markup"><span class="token tag"><span class="token punctuation"></</span>H1<span class="token punctuation">></span></span></span> Today is<span class="token punctuation">:</span> <span class="token markup"><%= new java.util.Date().toString() %></span> <span class="token markup"><span class=" token tag"><span class="token punctuation"></</span>BODY<span class="token punctuation">></span></span></span> <span class="token markup"><span class="token tag"><span class="token punctuation"></</span>HTML<span class="token punctuation">></span></span></span></code>
Ahora verificamos que Tomcat este funcionando correctamente, para ello acceder con el navegador web a la siguiente dirección:
http://[IP DEL SERVIDOR]:8080/helloworld/
Donde veremos algo como:
3 – Instalación de Apache y mod_jk
Instalamos Apache:
<code>apt-get -y install apache2</code>
Luego instalamos el conector mod_jk de Apache:
<code>apt-get -y install libapache2-mod-jk</code>
4 – Conectar Apache y Tomcat con mod_jk
A continuación debemos asegurarnos de que Tomcat tiene activado el conector con el protocolo binario AJP, para lo que abrimos el archivo server.xml:
<code>nano /etc/tomcat7/server.xml</code>
Y verificamos la existencia de una línea similar a la siguiente y nos aseguramos de que no este comentada:
<code><Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /></code>
Ahora creamos el archivo worker.properties:
<code>nano /etc/apache2/workers.properties</code>
Donde pegamos lo siguiente:
<code># Definir un worker usando ajp13 worker.list=worker1 # Definir las propiedades del worker (ajp13) worker.worker1.type=ajp13 worker.worker1.host=localhost worker.worker1.port=8009</code>
Y ahora le decimos a Apache que user el archivo worker-properties recien creado:
<code>nano /etc/apache2/mods-available/jk.conf</code>
Donde debemos modificar el valor del parámetro JkWorkersFile para que quede así:
<code>JkWorkersFile /etc/apache2/workers.properties</code>
Por último, modificamos la configuración del VirtualHost predeterminado de Apache, para definir las URLs que debe pasar a través de Tomcat:
<code>nano /etc/apache2/sites-enabled/000-default</code>
Preservando la configuración del VirtualHost, añadimos la línea JkMount:
<code><VirtualHost *:80> ....................................... ....................................... JkMount /helloworld* worker1 </VirtualHost *:80></code>
Ahora reinicia Apache y Tomcat:
<code>/etc/init.d/tomcat7 restart /etc/init.d/apache2 restart</code>
Y accede con tu navegador web a la siguiente dirección para verificar que todo funciona correctamente:
http://[IP DEL SERVIDOR]/helloworld/
Fuente: http://ayuda.guebs.com/instalar-tomcat7-apache2-mod_jk-ubuntu/