1. Configuración del puerto del servidor Tomcat
Todas las configuraciones de TomCat se colocan en la carpeta Conf, y el archivo Server.xml dentro es el archivo de configuración central.
Si desea modificar el puerto de inicio del servidor TomCat, puede modificar el puerto en el nodo del conector en el archivo de configuración de server.xml
Por ejemplo: cambie el puerto de inicio del servidor Tomcat desde el puerto predeterminado 8080 a 8081
Configuración predeterminada del puerto de inicio del servidor Tomcat
<Connector Port = "8080" Protocol = "Http /1.1" ConnecttimeOut = "20000" redirectPort = "8443" />
Modifique el puerto de inicio del servidor Tomcat al puerto 8081
<Connector Port = "8081" Protocol = "Http /1.1" ConnecttimeOut = "20000" redirectPort = "8443" />
Esto cambiará el puerto predeterminado de Tomcat predeterminado original al puerto 8081. Cabe señalar que una vez que se cambie el archivo *.xml en el servidor, el servidor Tomcat debe reiniciarse y la nueva información de configuración se lee nuevamente después de reiniciar. Debido a que el puerto de inicio Tomcat se ha modificado a 8081 en el archivo server.xml, el servidor Tomcat se inicia con el puerto 8081, como se muestra en la figura a continuación:
Para acceder al servidor TomCat, también debe acceder a él con el nuevo puerto de acceso: http: // localhost: 8081/, como se muestra en la figura a continuación:
2. Método de mapeo del directorio virtual del servidor Tomcat
Después de desarrollar la aplicación web, si desea acceder al mundo exterior, debe entregar el directorio donde la aplicación web se encuentra en el servidor web para la administración. Este proceso se llama mapeo de directorios virtuales. Entonces, en Tomcat Server, ¿cómo mapear directorios virtuales? Hay varias formas en total:
2.1. El método de mapeo de los directorios virtuales 1: Configurar en el elemento host del archivo server.xml
Encuentre el elemento host del archivo server.xml, como se muestra en la siguiente figura:
Agregar <host> </gest> a las etiquetas <path de contexto = "/javawebapp" docbase = "f:/javawebdemoproject"/> para asignar la aplicación javawebdemoproject javawebapp en el disco F al directorio virtual de javawebapp. El directorio virtual de JavawebApp es administrado por el servidor Tomcat. Javawebapp es un directorio que no existe en el disco duro. Es un directorio que escribimos casualmente, que es un directorio virtual, por lo que se llama un "directorio virtual". El código es el siguiente:
<Host name = "localhost" appbase = "webapps" impackwars = "true" autodePloy = "true" xmlvalidation = "false" xmlnamespaceaware = "false"> <context = "/javawebapp" docbase = "f:/javawebdemoproject"/> </host>
Entre ellos, el contexto representa un contexto que representa una aplicación Javaweb. El elemento de contexto tiene dos atributos.
Ⅰ.path: se usa para configurar directorios virtuales y debe comenzar con "/".
Ⅱ.docbase: configure este directorio virtual para corresponder al directorio donde la aplicación web se encuentra en el disco duro.
Use el navegador para acceder al recurso web 1.jsp en el directorio virtual de "/javawebapp". El resultado de acceso es el siguiente:
1. Se puede acceder a JSP normalmente, lo que significa que hemos mapeado con éxito el Javawebdemoproject Javawebapp al directorio virtual de Javawebapp. Acceder a "/JavawebApp/1.jsp" es equivalente a acceder a "f: /JavaWebDemoproject/1.jsp"
Nota: Después de Tomcat 6, ya no se recomienda usar el elemento de contexto de configuración en el archivo server.xml para agregar la asignación de directorio virtual, porque cada vez que se modifica el archivo server.xml, el servidor Tomcat debe reiniciarse antes de que el archivo server.xml se pueda recargar. Hay una descripción como esta en la documentación del servidor Tomcat http: // localhost: 8080/docs/config/context.html:
No se recomienda colocar elementos <contexto> directamente en el archivo server.xml. Esto se debe a que hace que la modificación de la configuración de contexto sea más invasiva ya que el archivo principal conf/server.xml no se puede volver a cargar sin reiniciar TomCat.
Los elementos de contexto individuales pueden definirse explícitamente:
En un archivo individual AT /Meta-inf/Context.xml dentro de los archivos de la aplicación. Opcionalmente (según el atributo CopyXML del host) esto se puede copiar a $ Catalina_Base/Conf/[EngineName]/[HostName]/y renombrado al nombre del archivo base de la aplicación más una extensión ".xml".
En archivos individuales (con una extensión ".xml") en $ catalina_base/conf/[EngineName]/[hostname]/directorio. La ruta y la versión de contexto se derivarán del nombre base del archivo (el nombre del archivo menos la extensión .xml). Este archivo siempre tendrá prioridad sobre cualquier archivo context.xml empaquetado en el directorio meta-INF de la aplicación web.
Dentro de un elemento de host en el principal conf/server.xml.
2.2. El método de mapeo de los directorios virtuales es 2: deje que el servidor Tomcat asigne automáticamente
El servidor TomCat administrará automáticamente todas las aplicaciones web en el directorio webapps y lo asignará en directorios virtuales. En otras palabras, las aplicaciones web en el Directorio WebApps del servidor TomCat pueden ser accedidos directamente por el mundo exterior.
Por ejemplo: Copie el javawebdemoproject javaweb en el disco F directamente en el directorio webapps del servidor Tomcat, como se muestra en la figura a continuación:
En este momento, el servidor TomCat asignará automáticamente un directorio virtual "/javawebdemoproject" con el mismo nombre para la aplicación Javawebdemoproject Javaweb, y luego puede usar el navegador para acceder a los recursos de la aplicación Javaweb, como se muestra en la figura a continuación:
2.3. El método de mapeo de los directorios virtuales tres
Consulte la documentación del servidor Tomcat:
En archivos individuales (con una extensión ".xml") en $ catalina_base/conf/[EngineName]/[hostname]/directorio. La ruta y la versión de contexto se derivarán del nombre base del archivo (el nombre del archivo menos la extensión .xml). Este archivo siempre tendrá prioridad sobre cualquier archivo context.xml empaquetado en el directorio meta-INF de la aplicación web.
Significa: Agregue un archivo con XML como extensión en el directorio/conf/catalina/localhost del servidor Tomcat. El nombre del archivo XML puede ser arbitrariamente, como el aa.xml a continuación. Tenga en cuenta que la oración "La ruta y la versión de contexto se derivará del nombre base del archivo". El significado de esta oración se traduce como "el atributo de ruta del elemento de contexto proviene del nombre del archivo XML". Como se mencionó anteriormente, el atributo de ruta del elemento de contexto se utiliza para configurar el nombre del directorio virtual, por lo que el nombre del directorio virtual es el nombre del archivo XML.
$ Catalina_Base se refiere al directorio raíz del servidor Tomcat. [EngineName] se refiere al nombre del motor utilizado por el servidor Tomcat. El motor utilizado por Tomcat es Catalina.
Agregue la aplicación de mapeo de elementos de contexto Javaweb en el archivo AA.XML, el código es el siguiente:
<Context docbase = "f: /javawebdemoproject" />
Nota: El atributo de ruta no se especifica en el elemento de contexto para establecer el nombre del directorio virtual. Luego, el nombre del directorio virtual asignado por "F:/javawebdemoproject" es Shenma, que es el nombre del archivo XML que se está editando actualmente.
La mayor ventaja de usar este método para asignar directorios virtuales es que no necesita reiniciar el servidor TomCat después de modificar el archivo de configuración. Por ejemplo, modifique aa.xml a bb.xml. El servidor Tomcat desabrochará automáticamente el contexto [/aa], y luego información automáticamente: Despliegue del descriptor de configuración D: /apache-Tomcat-7.0.53/conf/catalina/localhost/bb.xml
3. Host virtual de configuración del servidor Tomcat
3.1. Configurar el host virtual
Configurar un host virtual es configurar un sitio web.
Para configurar un host virtual (sitio web) en el servidor Tomcat, debe modificar el archivo de configuración server.xml en la carpeta conf, usar el elemento host para configurarlo, abrir el servidor.xml y puede ver un host virtual (sitio web) llamado LocalHost en el servidor TomCat, como se muestra en la figura a continuación:
Por lo general, colocamos la aplicación JavaWeb desarrollada en la carpeta WebApps, y luego podemos acceder a ella usando el "http: // localhost: number de puerto/javawebappname". De hecho, estamos accediendo al host virtual (host) cuyo nombre es "localhost". Este host virtual administra todas las aplicaciones web en la carpeta WebApps.
Por ejemplo: http: // localhost: 8080/javawebdemoproject/1.jsp. Esta dirección de URL accede al recurso web 1.JSP en la aplicación JavaWebDemOproject en el host virtual llamado LocalHost.
Podemos configurar un host virtual de la siguiente manera, por ejemplo:
<Host name = "www.gacl.cn" appbase = "f:/javawebapps"> </gest>
Aquí tenemos una nueva configuración de un host virtual. El nombre del host virtual es "www.gacl.cn". El host virtual "www.gacl.cn" ahora administra todas las aplicaciones web en la carpeta JavawebApps. Por lo general, cuando usamos el nombre de dominio "www.baidu.com" en Internet para visitar el sitio web de Baidu, en realidad estamos visitando un host virtual con el nombre "www.baidu.com". Entonces, cuando queremos acceder al host virtual con el nombre "www.gacl.cn", podemos usar el "Nombre de dominio (www.gacl.cn)" para acceder a él. Tenga en cuenta que AppBase = "f:/javawebapps". La carpeta JavawebApps aquí no representa el directorio raíz de un proyecto, sino una carpeta que almacena una o más aplicaciones Javaweb, como se muestra en la figura a continuación:
Es como la carpeta WebApps del servidor Tomcat, que almacena muchas aplicaciones Javaweb.
3.2. Registre el nombre de dominio en el sistema de Windows
Si el host configurado (sitio web) desea acceder externamente a través del nombre de dominio, debe registrar el nombre de dominio utilizado al acceder al sitio web en el sistema DNS Server o Windows y encontrar el archivo hosts en el directorio "C:/Windows/System32/Drivers/etc", como se muestra en la figura a continuación:
Edite este archivo y vincule el nombre de dominio y la dirección IP del sitio web recientemente agregado, para que podamos usar el nombre de dominio www.gacl.cn en el navegador para acceder a las aplicaciones web administradas en el nombre de host virtual www.gacl.cn.
Use el navegador para acceder al recurso web 1.jsp en la aplicación web JavawebDemo1 bajo el nombre de dominio "www.gacl.cn" a través del nombre de dominio "www.gacl.cn". El host virtual "www.gacl.cn" abre un puerto 8080. Los usuarios solo pueden acceder al recurso web 1.JSP en la aplicación web JavawebDemo1 a través de este puerto 8080 para acceder al recurso web 1.JSP en la aplicación web JavawebDemo1 a través de este puerto 8080
4. El proceso de interacción entre el navegador y el servidor
4.1. Diagrama de interacción de navegador y servidor
Diagrama de interacción de navegador y servidor
Cuando abrimos el navegador e ingresamos la dirección de URL "http://www.gacl.cn:8080/javawebdemo1/1.jsp" en la barra de direcciones del navegador para acceder al recurso web 1.jsp en el servidor, el navegador y el servidor hicieron una operación mágica. ¿Cómo vemos el contenido del recurso web 1.JSP en el navegador?
El navegador y el servidor hacen lo siguiente:
1. El navegador busca el nombre de host correspondiente al nombre de host en el archivo hosts del sistema operativo basado en el nombre de host "www.gacl.cn".
2. Si el navegador no encuentra la dirección IP correspondiente en el archivo hosts del sistema operativo, vaya al servidor DNS en Internet para encontrar la dirección IP correspondiente del host "www.gacl.cn".
3. Después de que el navegador encuentra la dirección IP correspondiente del host "www.gacl.cn", utiliza la dirección IP para conectarse al servidor web.
4. Después de que el navegador se conecta al servidor web, utiliza el protocolo HTTP para enviar una solicitud al servidor. Durante el proceso de envío de la solicitud, el navegador transmitirá datos al servidor web en forma de transmisión, diciéndole al servidor web a qué recurso web de aplicaciones web accederá, como se muestra en la figura a continuación:
Estos son los datos transmitidos al servidor cuando el navegador envía una solicitud al servidor web. Expliquemos el contenido de "get /JavaWebDemo1/1.jsp http/1.1".
Obtenga: dígale al servidor web que el navegador envía solicitudes al servidor en GET.
/JavaWebDemo1/1.jsp: dígale al servidor web que el navegador desea acceder al recurso web 1.JSP en la aplicación JavaWebDemo1.
HTTP/1.1: le dice al servidor web que el navegador lo solicita usando el protocolo HTTP y usa la versión 1.1.
5. Después de que el navegador complete los 4 pasos anteriores, comienza a esperar, esperando que el servidor web transfiera el recurso web 1.jsp al que desea acceder.
6. Después de que el servidor recibe los datos transmitidos por el navegador, comienza a analizar los datos recibidos. Cuando el servidor analiza el contenido en "Get /JavaWebDemo1/1.jsp http/1.1", sabe que el navegador del cliente quiere acceder al recurso web 1.JSP en la aplicación JavaWebDemo1. Luego, el servidor lee el contenido en el recurso web 1.JSP y transmite el contenido de lectura al navegador en forma de flujo, como se muestra en la figura a continuación:
Estos son los datos transmitidos al navegador por el servidor web.
7. Después de que el navegador obtiene los datos transmitidos por el servidor, puede mostrar los datos al usuario, como se muestra en la figura a continuación:
El "Javawebdemo1" que vi es el efecto del navegador que analiza los datos enviados por el servidor.
Datos enviados por el servidor:
Http/1.1 200 okserver: apache-coyote/1.1content-type: text/html; charset = ISO-8859-1Content-longitud: 102Date: lun, 19 de mayo de 2014 14:25:14 gmt <html> <cead> <title> javawebdemo1 </title> </head> <body> </body> </html>
Este es el proceso de interacción entre el navegador y el servidor.
5. La estructura de composición de las aplicaciones Javaweb
Al desarrollar aplicaciones JavaWeb, los diferentes tipos de archivos tienen reglas de almacenamiento estrictas. De lo contrario, no solo puede hacer que la aplicación web sea inaccesible, sino que también hacer que el servidor web inicie un error.
Webroot → El directorio donde se encuentra la aplicación web. En general, el directorio virtual debe configurarse en esta carpeta.
┝Web-INF: Esta carpeta debe ubicarse en la carpeta Webroot, y debe nombrarse en este formulario, con las letras requeridas para ser capitalizadas.
┝Web.xml: archivo de configuración, con requisitos de formato, este archivo debe nombrarse en este formulario y debe colocarse en la carpeta Web-INF.
El formato de Web.xml se puede hacer referencia directamente desde TomCat: busque el archivo web.xml en el directorio webapps/root/web-inf en el directorio de TomCat, copie el archivo a nuestra carpeta web-INF recientemente creada y modifique el archivo web.xml, delete los comentarios dentro, dejando solo el código que se muestra a continuación:
web.xml:
<? xml versión = "1.0" encoding = "iso-8859-1"?> <web-app xmlns = "http://java.sun.com/xml/ns/javaee" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalocation = "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version = "2.5"> <Welección de la pantalla> Bienvenido a Tomcat </spantname> <Scuion> Bienvenido a Tomcat </Descruion
Este es el formato del archivo web.xml.
Lo anterior se trata de este artículo, espero que sea útil para el aprendizaje de todos.