Apache Tomcat

Instalar Apache Tomcat en Linux

Apache Tomcat es un software desarrollado por Java orientado a servidores web que permite ejecutar servlets y proyectos JSP.

INSTALAR APACHE TOMCAT

Para instalar Tomcat en Linux el primer paso consiste en descargar una de sus versiones (binario) desde su página oficial y descomprimirlo en un directorio del sistema.  Para ello se crea un directorio, se copia el archivo y se descomprime en dicho directorio. El código siguiente realiza este proceso después de haber descargado la versión 8.5.51 y comprimido a tar.gz.

  1. mkdir server-tomcat
  2. cp Descargas/apache-tomcat-8.5.51.tar.gz server-tomcat/
  3. cd server-tomcat
  4. tar xvzf apache-tomcat-8.5.51.tar.gz

El segundo paso es añadir Apache Tomcat a una variable de entorno. 

  1. sudo nano .profile

Se crea la variable de entorno CATALINA_HOME asignando la ruta donde se encuentra la instalación de Apache Tomcat. (Entre la variable, el signo "=" y la ruta no deben existir espacios).

  1. #Configuración Tomcat
  2. export CATALINA_HOME=/home/usuario/server-tomcat/apache-tomcat-8.5.51

Actualizar

  1. apt update

El tercer paso es comprobar si funciona correctamente, accediendo al subdirectorio bin y arrancando o deteniendo el servidor.

  1. cd /home/usuario/server-tomcat/apache-tomcat-8.5.51/bin

Arrancar servidor.

  1. ./startup.sh

Detener servidor.

  1. ./shutdown.sh

ERROR build-impl.xml:1045 Deployment error

Este error impide iniciar el navegador desde NetBeans al ejecutar un proyecto con Tomcat. Para solucionar este error es necesario sustituir el archivo org-netbeans-modules-tomcat5.jar que se encuentra en el subdirectorio enterprise/modules de la carpeta de instalación de NetBeans. Si el directorio enterprise/modules no existe es necesario crearlo y copiar dentro el archivo que se puede descargar desde aquí.

Fuente (error build-impl.xml): //issues.apache.org/jira/browse/NETBEANS-3903

Error Could not contact [localhost:8005]

Este error se soluciona revisando firewalls o probando una versión de Java o OpenJDK anterior.


ESTRUCTURA APACHE TOMCAT

La estructura de Tomcat se basa en los siguientes directorios:

  • bin: Archivos ejecutables
  • conf: Archivos de configuración
  • lib: Archivos JAR
  • logs: Archivos de texto del registro
  • temp: Archivos temporales
  • webapp: Aplicaciones Web
  • work: Archivos class

bin

  • El directorio bin contiene los ejecutables startup y shutdown que permiten iniciar y detener el servicio,  disponibles en dos formatos distintos, la extensión bat (para Windows) y sh (para Linux). Además existen otros ejecutables como version (versión), configtest, setclasspath,etc... 

conf

  • El directorio conf contiene distintos archivos de configuración como web.xml (para las rutas), tomcat-users.xml (para los roles), context.xml,etc...

lib

  • El directorio lib contiene las librerías necesarias para el funcionamiento de Apache Tomcat junto a otras librerías disponibles para las aplicaciones, todas ellas con la extensión jar.

webapp

  • El directorio webapp es el lugar donde se encuentran las aplicaciones web, Tomcat incluye por defecto algunas aplicaciones: un proyecto web de ejemplo, un administrador de aplicaciones, documentación,etc..

work

  • El directorio work contiene el código fuente y otros archivos con extensión class generados por Tomcat.


ESTRUCTURA DE APLICACIÓN WEB 

Una aplicación web se compone de un directorio raiz, ubicado en el directorio webapps de Apache Tomcat y con un nombre que normalmente identifica el proyecto. La estructura básica del proyecto es la siguiente:

  • [MiProyecto] : Contiene archivos HTML, CSS,JSP,Javascript 
  • WEB-INF/web.xml : Permite configurar los servlets y página de inicio
  • WEB-INF/classes : Contiene los servlets y subdirectorios con paquetes de Java
  • WEB-INF/lib : Contiene las librerias necesarias para la aplicación
  • (opcional) META-INF/context.xml : Permite configurar la ruta raíz de la aplicación

web.xml

El archivo web.xml permite configurar un archivo o ruta inicial

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
  3. <welcome-file-list>
  4. <welcome-file>index.html</welcome-file>
  5. </welcome-file-list>
  6. </web-app>

El valor (index.html) de la etiqueta welcome-file indica el archivo o ruta que se ejecuta al inicio.

context.xml

El archivo context.xml permite indicar la ruta raíz de la aplicación mediante el atributo path

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <Context path="/MiProyecto">
  3. </Context path>

Para comprobar si la configuración es correcta se inicia el servidor y se accede a la aplicación mediante la ruta indicada.

Iniciar servidor

  1. ./startup.sh

Acceder a aplicación

Para acceder a la aplicación se introduce la dirección en el navegador


GESTOR DE APACHE TOMCAT

Apache Tomcat incorpora en la instalación un gestor de aplicaciones propio. Este gestor permite varias opciones como iniciar, detener, instalar, eliminar y acceder a las aplicaciones. Este gestor se encuentra restringido por defecto, para obtener acceso es requerida la configuración del rol manager-gui en el archivo tomcat-users.xml (conf/tomcat-users.xml)

Configurar tomcat-users.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <tomcat-users xmlns="http://tomcat.apache.org/xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd">
  3. <role rolename="manager-gui"/>
  4. <user password="admin" roles="manager-gui" username="admin"/>
  5. </tomcat-users>

Se crea el rol manager-gui y al crear el usuario se le asigna el rol manager-gui. Para que el servidor reconozca la configuración es necesario detener e iniciar el servicio.

Acceder desde una máquina externa

A partir de versiones de Apache Tomcat 8.5 o superiores, la configuración por defecto no permite acceder desde una máquina externa al gestor de aplicaciones. Para permitir el acceso es necesario configurar los archivos context relacionados con el gestor de aplicaciones:

  • webapps/manager/META-INF/context.xml
  • webapps/host-manager/META-INF/context.xml

Se modifica el atributo allow de la etiqueta Valve, ya sea, añadiendo una IP determinada o permitiendo acceso a cualquier IP.

Etiqueta Valve por defecto:

  1. <Valve className="org.apache.catalina.valves.RemoteAddrValve"
  2. allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

Configuración añadiendo una IP determinada:

  1. <Valve className="org.apache.catalina.valves.RemoteAddrValve"
  2. allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.85.123.82" />

Configuración permitiendo acceso a cualquier IP:

  1. <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$"/>


Comentarios: 0

Para poder comentar es necesario iniciar sesión



Este dominio utiliza cookies de terceros para crear estadísticas y publicidad personalizada. Si continúa navegando está aceptando su uso