zoukankan      html  css  js  c++  java
  • Tomcat配置

    Tomcat配置目录及文件说明

    ll /usr/local/tomcat/
    
    drwxr-x---. 2 root root  4096 9月  21 17:51 bin      #存放windows或Linux平台上启动和关闭Tomcat的脚本文件
    drwx------. 3 root root   254 9月  21 17:52 conf      #存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xml和web.xml
    drwxr-x---. 2 root root  4096 9月  21 17:51 lib       #存放Tomcat服务器所需的各种JAR文件
    -rw-r-----. 1 root root 57092 6月  21 2017 LICENSE      
    drwxr-x---. 2 root root   197 9月  21 17:52 logs      #存放Tomcat执行时的日志文件
    -rw-r-----. 1 root root  1723 6月  21 2017 NOTICE
    -rw-r-----. 1 root root  7064 6月  21 2017 RELEASE-NOTES
    -rw-r-----. 1 root root 15946 6月  21 2017 RUNNING.txt
    drwxr-x---. 2 root root    30 9月  21 17:51 temp        
    drwxr-x---. 7 root root    81 6月  21 2017 webapps      #Tomcat的主要Web发布目录,默认情况下把Web应用文件放于此目录
    drwxr-x---. 3 root root    22 9月  21 17:52 work        #存放JSP编译后产生的class文件
    
    • conf/sever.xml
    <Server>
    元素属性port:指定一个端口,这个端口负责监听关闭tomcat的请求shutdown:指定向端口发送的命令字符串,通常是“SHUTDOWN”
    <Service>
    元素属性name:指定service的名字,通常是”Catalina”
    <Connector/>
    元素属性(表示客户端和service之间的连接):port:指定服务器端要创建的端口号,并使用这个断口监听来自客户端的请求minProcessors(考察是否有此属性):服务器端启动时创建的处理请求的线程数maxProcessors(考察是否有此属性):最大可以创建的处理请求的线程数maxThreads:服务器创建的最大线程数minSpareThreads:最小剩余线程数maxSpareThreads:最大剩余线程数enableLookups:如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其IP地址redirectPort:指定当服务器正在处理HTTP请求时收到了一个SSL传输请求后重定向的端口号acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过的请求将不予处理connectionTimeout:指定超时的时间数(以毫秒为单位)disableUploadTimeout:不明debug:不明protocol:不明
    <Engine>
    元素属性(指定service中的请求处理主机,接收和处理来自Connector的请求)name:指定Engine的名字,通常是”Catalina”defaultHost:指定默认的处理请求的主机名,至少与某个host元素的name属性值是相同的
    <Context/>
    元素属性(表示一个web应用程序)docBase:指定此Web应用的绝对或相对路径,也可以为WAR文件的路径path:表示此Web应用程序的url的入口,如为“/hello“,则请求的URL为http://localhost:8080/hello/reloadable:如果为true,则Tomcat在运行时会自动监视Web应用的/WEB-INF/lib和/WEB-INF/classes下文件的改动,自动装载新应用,使我们可以在不重启Tomcat的情况下更新Web应用
    <Host>
    元素属性(表示一个虚拟主机)name:指定虚拟主机名字debug:指定日志级别appBase:存放Web应用程序的基本目录,可以是绝对路径或相对于$CATALINA_HOME的目录,默认是$CATALINA_HOME/webappsunpackWARs:如果为true,则tomcat会自动将WAR文件解压后运行,否则不解压而直接从WAR文件中运行应用程序autoDeploy:如果为true,表示Tomcat启动时会自动发布appBase目录下所有的Web应用(包括新加入的Web应用)deployOnStarup:如果此项为true,表示Tomcat服务器启动时会自动发布appBase目录下所有Web应用。如果Web应用在server.xml中没有相应的<Context>元素,则将采用默认的Context配置。deployOnStarup的默认设置是truealias:指定虚拟主机的别名,可以指定多个别名xmlValidation:不明xmlNamespaceAware:不明
    <Logger/>
    元素属性(表示日志,调试和错误信息)className:指定logger使用的类名,此类必须实现org.apache.catalina.Logger 接口prefix:指定log文件名的前缀(文件名)suffix:指定log文件名的后缀(扩展名)timestamp:如果为true,则log文件名中会加入日期时间,如下例:localhost_log.2006-10-04.txtdirectory:指定log文件存放的目录
    <Realm/>
    元素属性(表示存放用户名,密码及role的数据库)className:指定Realm使用的类名,此类必须实现org.apache.catalina.Realm接口resourceName:不明
    <Valve/>
    元素属性(功能与Logger相似,其prefix和suffix属性解释和Logger 中的一样)className:指定Valve使用的类名,如用org.apache.catalina.valves.AccessLogValve类可以记录应用程序的访问信息directory:指定log文件存放的位置pattern:有两个值,common方式记录远程主机名或ip地址、用户名、日期、第一行请求的字符串、HTTP响应代码、发送的字节数。combined方式比common方式记录的值还多
    

    *server.xml文件结构图

    <server>
    	<service>
    		<connector />
    		<connector />
    		<engine >
    			<host name="">
    			</host>
    			<host name="">
    			</host>
    			<host name="">
    				<context />
    				<context />
    			</host>
    			
    		</engine>
    	</service>
    </server>
    
    • conf/web.xml
    默认Web应用的首页文件的设置
    <welcome-file-list>
           <welcome-file>index.html</welcome-file>
           <welcome-file>index.htm</welcome-file>
           <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    报错文件的设置
    a.如果某文件资源没有找到,服务器要报404错误,按下述配置则会调用webappsROOT
    otFileFound.jsp
    <error-page>
           <error-code>404</error-code>
           <location>/notFileFound.jsp</location>
    </error-page>
    b.如果执行的某个JSP文件产生NullPointException,则会调用webappsROOT
    ull.jsp
    <error-page>
            <exception-type>java.lang.NullPointerException</exception-type>
            <location>/null.jsp</location>
    </error-page>
    session 会话过期时间的设置,单位是分钟
    <session-config>       
           <session-timeout>30</session-timeout> 
    </session-config>
    servlet的设置
    <servlet>
         <servlet-name>default</servlet-name>
         <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
         <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
          </init-param>
          <init-param>
                <param-name>listings</param-name>
                <param-value>true</param-value>
          </init-param>
          <load-on-startup>1</load-on-startup>
      </servlet>
    说明:<servlet-name>:定义Servlet的名字。<servlet-class>:指定实现这个Servlet的类。<init-param>:定义Servlet的初始化参数(包括参数名和参数值),一个 <servlet>元素中可以有多个<init-param>元素。<load-on-startup>:指定当Web应用启动时,装载Servlet的次序。当这个值为正数或零,Servlet容器先加载数值小的Servlet,再一次加载其他数值大的Servlet。如果这个值为负数或没有设定,Servlet将在Web客户首次访问这个Servlet时加载它。
    filter过滤器的设置
    <filter>
           <filter-name>FilterSource</filter-name>
           <filter-class>project4. FilterSource </filter-class>
    </filter>
    <filter-mapping>
           <filter-name>FilterSource</filter-name>
           <url-pattern>/WwwServlet</url-pattern>
          (<url-pattern>/haha/*</url-pattern>)
    </filter-mapping>
    过滤:1) 身份验证的过滤Authentication Filters2) 日志和审核的过滤Logging and Auditing Filters3) 图片转化的过滤Image conversion Filters4) 数据压缩的过滤Data compression Filters5) 加密过滤Encryption Filters6) Tokenizing Filters7) 资源访问事件触发的过滤Filters that trigger resource access events XSL/T 过滤XSL/T filters9) 内容类型的过滤Mime-type chain Filter注意监听器的顺序,如:先安全过滤,然后资源,然后内容类型等,顺序可以自己定。
    
    
  • 相关阅读:
    ActiveMQ 即时通讯服务 浅析
    Asp.net Mvc (Filter及其执行顺序)
    ActiveMQ基本介绍
    ActiveMQ持久化消息的三种方式
    Windows Azure Virtual Machine (27) 使用psping工具,测试Azure VM网络连通性
    Azure China (10) 使用Azure China SAS Token
    Windows Azure Affinity Groups (3) 修改虚拟网络地缘组(Affinity Group)的配置
    Windows Azure Storage (22) Azure Storage如何支持多级目录
    Windows Azure Virtual Machine (26) 使用高级存储(SSD)和DS系列VM
    Azure Redis Cache (2) 创建和使用Azure Redis Cache
  • 原文地址:https://www.cnblogs.com/wml3030/p/15318717.html
Copyright © 2011-2022 走看看