11 junio 2008

PHP + JSP Configurar mod_jk

Hace tiempo bucando en intenet la respuesta de poder servir paginas con Apache y con Tomcat en el mismo server LINUX, pero no se habia logrado, pero ahorita vamos a documentar esto.

1. Conseguir los archivos
Vamos a hacerlo con XAMPP Descargamos el programa y seguimos los pasos que en la web de xampp vienen para instalar.
Descargamos Java Development Kit, JDK
COPIAMOS cp -p jdk-1_.....Linux-i586.bin /usr/local
CAMBIAMOS AL DIRECTORIO cd /usr/local
CAMBIAMOS PERMISOS chmod +x jdk-1_5_0_06-linux-i586.bin
EJECUTAMOS ./jdk-1_5_0_06-linux-i586.bin
BORRAMOS EJECUTABLE rm jdk-1_5_0_06-linux-i586.bin

EXPORTAMOS LA VARIABLE JAVA_HOME=/usr/local/jdk1.0.0.0.0
CORREMOS LA RUTA DE LOS BIN PATH=$PATH:$JAVA_HOME/bin
Y LO AGREGAMOS AL SISTEMA export PATH JAVA_HOME
source /etc/profile
VERIFICAMOS SI ESTA LISTO CON echo $JAVA_HOME

Decargamos TOMCAT la version mas actual en binarios, listos para ejecucion. los bajamos y vamos a descomprimir en /opt/

LO COPIAMOS A OPT cp -p apache-tomcat-5.5.16.tar.gz /opt/
cd /opt/
DESCOMPRIMIMOS tar xvzf apache-tomcat-5.5.16.tar.gz
BORRAMOS EL FUENTE rm apache-tomcat-5.5.16.tar.gz


Esta listo entramos a la carpeta de tomcat y vamos a bin/ despues ejecutamos con
./startup.sh
si se levanto, vamos al navegador y al puerto 8080, http://localhost:8080/ y debe de msstrarnos la pag. de tomcat. si todo va bien, vamos a configurar.

2. PARAMOS EL SERVICIO y configuramos el MOD, para eso descargamos de modulo de AQUI, junto con los archivos workers y .conf.
NOS DIRIGIMOS AL ARCHIVO HTTPD.CONF QUE SE ENCUENTRA EN /opt/lampp/etc/ y agregamos el modulo
include /opt/lampp/etc/auto/mod_jk.conf
GUARDAMOS EL ARCHIVO Y MODIFICAMOS MAS ADELANTE LAS SIGUIENTES LINEAS
##
## Options FollowSymLinks
## AllowOverride None
## #XAMPP
## #Order deny,allow
## #Deny from all
##

COMENTAMOS ESTO
##
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
#Options Indexes FollowSymLinks
# XAMPP
## Options Indexes FollowSymLinks ExecCGI Includes


#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
#AllowOverride None
# since XAMPP 1.4:
## AllowOverride All


#
# Controls who can get stuff from this server.
#
## Order allow,deny
## Allow from all

##

Y ESTO TAMBIEN LO COMENTAMOS

Y TENEMOS LISTO EL HTTPD.CONF
VAMOS A MODIFICAR AHORA LOS ARCHIVOS WORKERS Y CONF, VAMOS CON workers.properties

workers.tomcat_home=/opt/apache-tomcat-6.0.16 AQUI ES LA DIRECCION DONDE TIENES EL TOMCAT DESCOMPRIMIDO

workers.java_home=/home/carlos/Descargas/jdk1.6.0_06 AQUI LA DIRECCION DE JAVA EL JDK

ps=/


worker.list=ajp13



worker.default.port=8009

worker.default.host=localhost

worker.default.type=ajp13

worker.default.lbfactor=1

TODO LO DEMAS QUEDA IGUAL
POR ULTIMO, VAMOS CON EL ARCHIVO MOD_JK.CONF, ESTE ES DONDE TENDREMO EL VIRTUAL HOST

ACA ESTA LA CONFIGURACION


LoadModule jk_module "/opt/lampp/modules/mod_jk.so"


JkWorkersFile "/opt/lampp/etc/jk/workers.properties"
JkLogFile "/opt/lampp/etc/jk/mod_jk.log"

JkLogLevel emerg




ServerName localhost

JkMount /manager ajp13
JkMount /manager/* ajp13

JkMount /docs ajp13
JkMount /docs/* ajp13

JkMount /Reportes ajp13
JkMount /Reportes/* ajp13

JkMount /examples ajp13
JkMount /examples/* ajp13

JkMount /host-manager ajp13
JkMount /host-manager/* ajp13

DocumentRoot /home/carlos/www/

Options FollowSymLinks
AllowOverride None


Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
#RedirectMatch ^/$ /apache2-default/


ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all





EN CADA JMOUNT, LLEVAS LAS CARPETAS QUE ESTARAN SERVIDAS POR TOMCAT. Y LISTO
REINICIAS EL SERVIDOR APACHE
Y PRUEBAS CON

HTTP://LOCALHOST/EXAMPLES

LA CARPETA DE AUTO VIENE EN EL COMPRIMIRDO QUE DESCARGARON, MANDENLO A LA CARPETA DE ETC, AUTO Y JK

5 comentarios:

Jose dijo...

Hola,

Estoy haciendo el proyecto final de carrera y solo me falta configurar la parte de apache2+Tomcat5 en Ubuntu. Llevo bastantes días metido en esto y no consigo que me funcione en Linux, aunque sí en Windows(pero tiene que ser en Linux).

Me estado mirando su explicación, pero el link "AQUI, junto con los archivos workers y .conf." no funciona y no me puedo bajar nada.

Estaría plenamente interesado!!
Muchas gracias

Carlos Zaragoza dijo...

Hola Jose, aca dejo la liga, solo por unos días
http://sincehgo.sep.gob.mx/modulos.zip

Jose dijo...

Muchísimas gracias carast por el link i por el buen material que has colgado! Gracias!

He estado probando todo lo que vas comentando, y me ha ido todo genial hasta la parte "rara" (inserir el mod_jk).

Seguramente es culpa mia porque soy muy torpe con esto del Linux, pero sino es mucha molestia a ver si me puedes hechar un pequeño cable...

Te comento ... al hacer todo lo que has publicado punto por punto al arrancar el Xammp me da un error en el Starting del Apache, así que deduzco que el error debe estar en la configuración. Me he fijado que escribes la linia: LoadModule jk_module "/opt/lampp/modules/mod_jk.so" i en la instalación del XAMPP no se encuentra este modulo por defecto.

Se tendria que agregar automaticamente o no tiene porque ser este error?? o ... nose ...

Me reitero ... muchas gracias ;)

Jose dijo...

Perdona que no te he dicho que la linia se encuentra en el mod_jk.conf (para así no buscar, sino te acuerdas de memoria) :)

Jose dijo...

Hola carast,

Finalmente lo he conseguido hacer funcionar. He compilado el connector de la version del apache y añadiendo el mod_jk.so resultante de la compilación a los modulos y con 4 retoques más ... vuala!! :D

Muchas gracias por todo y disculpa las posibles molestias causadas!

Ya tengo guardado su blog por lo interesante y util que me ha sido su aportación! GRACIAS!!! :D