Este documento describe como tener instalado Apache para servir aplicaciones Java mediante Tomcat en Debian 4 (Etch)
Este documento no es un tutorial; es un tutorial paso a paso con puntos de control para poder el sistema funcional.
Tampoco se consideran acá temas de seguridad ni performance. De hecho el sistema que queda instalado tiene mínima seguridad y performance (que deberá ser ajustada a posterior)
apt-get install apache2
Debe estar disponible el repositorio non-free en el archivo /etc/apt/sources.list
apt-get install sun-java5-bin sun-java5-jdk sun-java5-fonts
Editar el archivo /etc/profile
y colocar esta línea:
export JAVA_HOME="/usr/lib/jvm/java-1.5.0-sun"
Correr el comando update-alternatives –all
y verificar que java-1.5.0-sun
sea lo seleccionado en todos los casos que exista opciones para Java.
Si es un servidor recién instalado, este java es la única opción, por lo que nunca lo selecciona para decidir alternativa.
apt-get install tomcat5.5 tomcat5.5-admin tomcat5.5-webapps
Editar archivo /etc/default/tomcat5.5
y descomentar la línea que dice:
JAVA_HOME="/usr/lib/jvm/java-1.5.0-sun"
netstat -ptan
que aparecen en LISTEN
el puerto 8009
Existen dos formas de vincular Apache con Tomcat:
Recomandado para ambientes de producción y única opción cuando se usa Apache 1.x:
Más simple de configurar que mod_jk, se puede utilizar solo con Apache 2.x:
Es necesario dar de alta un usuario administrador en el archivo /var/lib/tomcat5.5/conf/tomcat-users.xml
agregando roles de admin y manager y luego un usuario (ejemplo: administrador) con estos roles, quedando asi:
<?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="tomcat" /> <role rolename="role1" /> <role rolename="manager" /> <role rolename="admin" /> <user username="tomcat" password="tomcat" roles="tomcat" /> <user username="both" password="tomcat" roles="tomcat,role1" /> <user username="role1" password="tomcat" roles="role1" /> <user username="administrador" password="12345" roles="admin,manager" /> </tomcat-users>
Para efectos de seguridad, debemos cambiar la permisología del archivo, haciendo:
chmod 600 /var/lib/tomcat5.5/conf/tomcat-users.xml
Oviamente es necesario reiniciar tomcat: /etc/init.d/tomcat5.5 force-reload
Se puede instalar aplicaciones .war medante el manager.
Para ingresar al Administration es necesario dar los permisos correspondientes, ver sección siguiente.
http://www.mail-archive.com/pkg-java-maintainers@lists.alioth.debian.org/msg04140.html
Re: Problem with version 5.5.20-2 of this package. Marcus Better Sat, 25 Nov 2006 13:05:27 -0800 Jonathan-Marc Lapointe wrote: > Tomcat is starting properly but I'm getting error : HTTP 503 - > Servlet admin.login_jsp is actually unavailable. This is a bug in the permissions. Please add the following to /etc/tomcat5.5/policy.d/50user.policy: grant codeBase "file:/usr/share/struts1.2/struts.jar" { permission java.security.AllPermission; }; > While investigating on this I've noticed that for package > tomcat5.5-admin_5.5.20-2_all.deb, under > /usr/share/tomcat5.5/server/webapps/admin/WEB-INF, there is only these > files nad folders : That is correct, the other files were superfluous. The class files are included in the jar, and the src directory should not be there at all. Thanks for the report, I will fix this in the next release. Marcus