计划,每天学习两小时,坚持带来大改变。

tomcat的安装目录各文件夹的意义

Java 阿尤 3845浏览 0评论

        假设你已将Tomcat解压,你已得到下列目录结构:
        目录名--描述
        bin
        包含启动/关闭脚本。
        conf
        包含不同的配置文件,包括server.xml(Tomcat的主要配置文件)和为不同的Tomcat配置的web应用设置缺省值的文件web.xml。
        doc
        包含各种Tomcat文档。
        lib
        包含Tomcat使用的jar文件,unix平台此目录下的任何文件都被加到Tomcat的classpath中。
        logs
        Tomcat摆放日志文件的地方。
        src
        ServletAPI源文件,先别高兴,这些只有些必须在Servlet容器内实现的空接口和抽象类。
        webapps
        包含web项目示例。
        此外你可以Tomcat会创建如下目录:
        work
        Tomcat自动生成,放置Tomcat运行时的临时文件(如编译后的JSP文件),如在Tomcat运行时删除此目录.JSP页面将不能运行。
        classes
        你可以创建此目录来添加一些附加的类到类路径中,任何你加到此目录中的类都可在Tomcat的类路径中找到自身。
tomcat目录结构
/bin:存放windows或Linux平台上启动和关闭Tomcat的脚本文件
/conf:存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xml和web.xml
/doc:存放Tomcat文档
/server:包含三个子目录:classes、lib和webapps
/server/lib:存放Tomcat服务器所需的各种JAR文件
/server/webapps:存放Tomcat自带的两个WEB应用admin应用和 manager应用
/common/lib:存放Tomcat服务器以及所有web应用都可以访问的jar文件
/shared/lib:存放所有web应用都可以访问的jar文件(但是不能被Tomcat服务器访问)
/logs:存放Tomcat执行时的日志文件
/src:存放Tomcat的源代码
/webapps:Tomcat的主要Web发布目录,默认情况下把Web应用文件放于此目录
/work:存放JSP编译后产生的class文件
Tomcat配置文件及其元素描述
一, tomcat的配置文件
        Tomcat的配置基于两个配置文件:
        1.server.xml - Tomcat的全局配置文件。
        2.web.xml - 在Tomcat中配置不同的关系环境。
二,server.xml
        server.xml是Tomcat的主配置文件.完成两个目标:
        1 提供Tomcat组件的初始配置。
        2 说明Tomcat的结构与含义,使得Tomcat通过实例化组件完成起动及构建自身。
        在server.xml中的重要元素的描述:
        Server
        server.xml文件中最重要的元素,Server定义了一个Tomcat服务器,Server元素能包含Logger和ContextManager元素类型
        Logger
        此元素定义一个Logger对象,每个 Logger都有一个名字来标识,也有一个纪录Logger的输出和冗余级别(描述此日志级别)和包含日志文件的路径。通常有servlet的 Logger(ServletContext.log()处),JSP和Tomcat运行时的Logger。
       ContextManager
        ContextManager说明一套ContextInterceptor,RequestInterceptor , Context和他们的Connectors的配置及结构.ContextManager有几个随同提供的特性:
        1. 用来纪录调试信息的调试级别
        2. webapps/,conf/,logs/和所有已定义的环境的基本位置.用来使Tomcat可以在TOMCAT_HOME外的其他目录启动.
        3. 工作目录的名字
       ContextInterceptor&RequestInterceptor
        这 些侦听器(interceptors)侦听具体发生在ContextManager中的事件。例如,ContextInterceptor侦听 Tomcat的启动及终止事件,RequestInterceptor监视在它服务过程中用户请求需要通过的不同阶段。Tomcat的管理员不必知道太多关于侦听器的知识。另外,开发者应该知道这是如何在Tomcat中实现一个”全局”型的操作(例如安全性及每个请求日志)
        Connector
        Connector表示一个到用户的联接,不管是通过web服务器或直接到用户浏览器(在一个独立配置中)。Connector负责管理Tomcat的工作线程和读/写连接到不同用户的端口的请求/响应。Connector的配置包含如下信息:
        1.句柄类
        2.句柄监听的TCP/IP端口
        3.句柄服务器端口的TCP/IP的backlog.
        Context
        每个Context提供一个指向你放置你Web项目的Tomcat的下属目录。每个Context包含如下配置: [Page]
        1. Context放置的路径,可以是与ContextManager主目录相关的路径。
        2.纪录调试信息的调试级别。
        3.可重载的标志.开发Servlet时,重载更改后的 Servlet,这是一个非常便利的特性,你可以调试或用Tomcat测试新代码而不用停止或重新启动Tomcat。要打开重载,把reloadable 设为true即可。这虽花费时间但可检测所发生的变化;更重要的是鉴于在一个装载类对象装入一个新的servlet时,类装载触发器可能会掷出一些错误。 为避免这些问题,你可以设置可重载为false,这将停止重载功能。
三,web.xml
        Tomcat 可以让用户通过将缺省的web.xml放入conf目录中来定义所有关系环境的web.xml的缺省值。建立一个新的关系环境时,Tomcat使用缺省的 web.xml文件作为基本设置,应用项目特定的web.xml(放在应用项目的WEB-INF/web.xml文件)来覆盖这些缺省值。
四,tomcat环境变量配置
在环境变量里面新建加入:
tomcat_home     
E:/java/Tomcat6.0  //改成你自己tomcat那就的盘符就好了
其它:看一下都要改成自己对应的哦
classpath
.;E:\Java\jdk1.6.0_11\lib\dt.jar;E:\Java\jdk1.6.0_11\lib\tools.jar
JAVA_HOME
E:\Java\jdk1.6.0_11
Path
;E:\Java\jdk1.6.0_11\bin;
tomcat_home
E:\Java\Apache Tomcat 6.0.18
E:\Java\Tomcat 6.0

E:\oracle\product\10.1.0\db_1\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;D:\ProgramFiles\MySQL\MySQL Server 5.0\bin;E:\Java\jdk1.6.0_11\bin
tomcat的安装目录各文件夹的意义
tomcat下有9个目录,分别是bin,common,conf,logs,server,shared,temp,webapps,work 目录,现在对每一目录做介绍。
tomcat根目录在tomcat中叫<CATALINA_HOME>,文章中把tomcat解压后在c:/下。1.<CATALINA_HOME>/bin:存放各种平台下启动和关闭Tomcat的脚本文件。其中有个档是catalina.bat,打开这个windos配置文件,在非注释行加入JDK路径,例如 : SET JAVA_HOME=C:j2sdk1.4.2_06 保存后,就配置好tomcat环境了。 startup.bat是windows下启动tomcat的文件,shutdown.bat是关闭tomcat的文件。2.<CATALINA_HOME>/common: 在common目录下的lib目录,存放Tomcat服务器和所有web应用都能访问的JAR?。
3.<CATALINA_HOME>/shared:在shared目录下的lib目录,存放所有web应用能访问的,但Tomcat不能访问的JAR?
4.<CATALINA_HOME>/server:在server/webapps目录中,存放Tomcat自带的两个APP-admin和manager应用,使用来管理Tomcat-web服务用的。在server/lib目录中,存放tomcat服务器所需要的各,web应用不能访问种jar?。
5.<CATALINA_HOME>/work: Tomcat把各种由jsp生成的servlet文件放在这个目录下。work这个文件夹下面的东西建议你去看看就可以明白了 那是JSP文件编译成.java->.classes
6.<CATALINA_HOME>/temp: 临时活页夹,Tomcat运行时候存放临时文件用的。
7.<CATALINA_HOME>/logs: 存放Tomcat的日志文件
8.<CATALINA_HOME>/conf: Tomcat的各种配置文件, tomcat启动的时候需要读取的配置文件:server.xml(tomcat主要配置文件)、web.xml和tomcatat-users.xml、catalina.policy(安全策略文件)等。修改了以后需要重启tomcat才能生效.最重要的是 server.xml;配置tomcat组件的XML文件server.XML其中包括
I.顶层类元素[Top Level Elements]: 位于整个配置文件的顶层,包括<Server>和<Service>;
II.连接器类元素[Connectors ]: 客户和服务(容器类元素)间的通讯接口。接受客户请求,返回响应结果;<Connector>
II.容器类元素[Containers]: 处理客户请求并且生成响应结果,包含3个:<Engine><Host> <Context>
IV.嵌套类元素[Nested Components]: 可以加入到容器中的元素,包括:<logger> <Valve><Realm>等
一个<Server>包含一个或多个<Service>,一个<Service>包含唯一一个<Engine>和一个或多个<Connector>,多个<Connector>共享一个<Engine>;一个<Engine>包含多个<Host>,每个<Host>定义一个虚拟主机,包含一个或多个web应用<Context>; <Context>元素是代表一个在虚拟主机上运行的Web应用。<Context>标签的描述
Please notethat for tomcat 5.x, unlike tomcat4.x, it is NOT recommended to place<Context> elements directly in the server.xml file. Instead, put them in the META-INF/context.xml directory of your WAR file orthe conf directory as described above.
    server.xml配置简介     
   下面是这个文件中的基本配置信息,更具体的配置信息见tomcat的文档     
   server:   
   port   指定一个端口,这个端口负责监听关闭tomcat的请求     
   shutdown   指定向端口发送的命令字符串     
   service:   
   name   指定service的名字     
   Connector   (表示客户端和service之间的连接):     
   port   指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求     
   minProcessors    服务器启动时创建的处理请求的线程数     
   maxProcessors    最大可以创建的处理请求的线程数     
   enableLookups    如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址     
   redirectPort    指定服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号     
   acceptCount    指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理     
   connectionTimeout    指定超时的时间数(以毫秒为单位)     
   Engine   (表示指定service中的请求处理机,接收和处理来自Connector的请求):     
   defaultHost    指定缺省的处理请求的主机名,它至少与其中的一个host元素的name属性值是一样的     
   Context   (表示一个web应用程序,通常为WAR文件,关于WAR的具体信息见servlet规范):     
   docBase   应用程序的路径或者是WAR文件存放的路径     
   path   表示此web应用程序的url的前缀,这样请求的url为http://localhost:8080/path/****   
   reloadable   这个属性非常重要,如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib    和/WEB-INF/classes目录的变化,自动装载新的应用程序,我们可以在不重起tomcat的情况下改变应用程序     
   host   (表示一个虚拟主机):     
   name   指定主机名     
   appBase   应用程序基本目录,即存放应用程序的目录     
   unpackWARs   如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序     
   Logger   (表示日志,调试和错误信息):     
   className   指定logger使用的类名,此类必须实现org.apache.catalina.Logger    接口     
   prefix   指定log文件的前缀     
   suffix   指定log文件的后缀     
   timestamp   如果为true,则log文件名中要加入时间,如下例:localhost_log.2001-10-04.txt     
   Realm   (表示存放用户名,密码及role的数据库):     
   className   指定Realm使用的类名,此类必须实现org.apache.catalina.Realm接口     
   Valve   (功能与Logger差不多,其prefix和suffix属性解释和Logger    中的一样):     
   className   指定Valve使用的类名,如用org.apache.catalina.valves.AccessLogValve类可以记录应用程序的访问信息     
   directory   指定log文件存放的位置     
   pattern   有两个值,common方式记录远程主机名或ip地址,用户名,日期,第一行请求的字符串,HTTP响应代码,发送的字节数。combined方式比common方式记录的值更多     
   
   注意:     
   默认的server.xml中,Realm元素只设置了一个className属性,但此文件中也包含几个通过JDBC连接到数据库进行验证的示例(被注释掉了),通过Realm元素我们可以实现容器安全管理(Container    Managed   Security)。     
   
   还有一些元素,如Parameter,loader,你可以通过tomcat的文档获取这些元素的信息。  
9.<CATALINA_HOME>/webapps: web应用的发布目录,把 java开发的web站点或war文件放入这个目录下就可以通过tomcat服务器访问了。
在绝大多数资料上,都只提到了conf/server.xml以及context下面的 WEB-INF/web.xml,但我发现,有时,在server.xml上面没有配置的内容,tomcat也运行着,后来发现,原来除了这两处配置外,还有一处重要的配置文件, 在TOMCAT_HOME/conf/Catalina/下面(Catalina是server.xml里的engine的名称),也是一些关键的配置文件,每个主机(server.xml里的Host),在这里有一个目录,每个主机(Host)里的一个context在该主机目录下有一个对应的xml文件,比如,根目录对应ROOT.xml,其它名为test的context对应test.xml。
TOMCAT_HOME/conf/Catalina/hostname/context1.xml相当于在server.xml中的Catalina引擎下的hostname主机下配置context1WEB应用。在目录里配置,和在server.xml里配置效果是一样的,Tomcat自带的admin,自动将所有context转到目录下配置,而不是集中在server.xml。
     10、如何新建虚拟目录?
修改 Tomcat安装目录//conf//server.xml,在下列行前
</Host>
</Engine>
添加下列行:
<Contextpath="/my" docBase="c://myjsp//test" debug="0"reloadable="true">
</Context>
表示增加虚拟目录 my,对应物理目录位置c://myjsp//test,若存在c://myjsp//test//hello.jsp,则下列地址可访问:
htpp://localhost:8080/my/hello.jsp
修改server.xml后,需要重新启动tomcat.

转载请注明:阿尤博客 » tomcat的安装目录各文件夹的意义

游客
发表我的评论 换个身份
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  • 验证码 (必填)点击刷新验证码