Tomcat5.5的基本配置详细说明

1/5/2008来源:Java教程人气:6581


  Tomcat是apache的一个子项目,也是一个开源项目,主要是用于J2EE web容器,由于是一个开源项目,在学习与开发测试中经常被用到,(而目前商业最为经常用到的web服务器是BEA WebLogic)。在开源项目中,鼎鼎大名的apache基金会大家肯定有所了解,网站链接:http://www.apache.org/,而旗下的Jakarta PRoject 主要包括了Tomcat、Alexanda等java项目,有爱好者可看:http://jakarta.apache.org/。考虑到各位学习者的机器配置与学习成本问题,这里选了Tomcat作为我们学习与测试J2EE的环境以下为一些基本配置:
  
  一、先从网上下载tomcat
  目前最新版本是5.57,下载地址是:http://apache.freelamp.com/jakarta/tomcat-5/v5.5.7/bin/jakarta-tomcat-5.5.7.zip,下载安装完后,在安装目录下有以下目录,主要介绍一下conf、common、webapps:
  
  假如你现在等不急了,就想体验一下tomcat的魅力的话,把你的网页拷到webapps/ROOT目录下,然后再通过浏览器访问即可,默认如下格式:http://localhost:8080/<你的网页>
  
  1)webapps文件夹主要用于web应用程序部署,比如你可以把你的应用程序包,如war文件拷到该目录下,容器会自动部署。
  2)conf文件夹下主要是放置tomcat的服务器的相关配置文件
  3)common文件夹主要是对容器全局变量的文件放置地方,如common/lib下就是放置一些需要全文配置的文件包。
  
  二、j2ee的相关部署规范:
  一般来说作为一个符合规范的web程序,会包括以下文件夹和文件:/WEB-INF/(主要是放置一些配置文件与不希望外部程序访问的隐私文件),在网络上是不答应访问该文件夹的,如当你输入以下http://localhost:8080/WEB-INF/的话就会出现错误。
  
  在WEB-INF文件夹下有一个web.xml文件,这是对当前应用程序的相关设置,资源寻找等,/WEN-INF/文件夹下有个classes子文件夹,该文件夹是应用程序的根路径(等于是classpath的路径),/WEN-INF下还要有个lib文件夹,主要是放置需要引入的包,应用程序导入的包先从这里开始寻找,其次到容器的全局路径下$TOMCAT_HOME/common/lib下寻找。
  
  以下是基本文件夹:
  /tomcat
  /common
  /lib
  /classes
  /conf
  /webapps
  /ROOT
  web.xml
  /WEB-INF
  /lib
  /classes
  /你部署的程序包
  web.xml
  /WEB-INF
  /lib
  /classes
  
  三、容器的配置(server.xml)
  到主目录/conf文件夹下server.xml文件是对web服务器的配置:
  以下是一些常见的设置,http端口设置,找到以下:
  <Connector port="8080"  maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
  enableLookups="false" redirectPort="8443" acceptCount="100"
  connectionTimeout="20000" disableUploadTimeout="true" />
  把8080端口改为你喜欢使用的端口,如常见的80,以后你就可以利用该端口进行访问你的网站了:http://localhost:80 期中80是默认的,可以不写,其他的一下配置,可以参观相关的内容,入门就是这么简单。
  web.xml为servlet的一些相关配置,可以参照一下规范。可以看我写的其他文章。
  继续说一下server.xml文件的设置,
  找到以下:
  <Host name="localhost" appBase="webapps"
  unpackWARs="true" autoDeploy="true"
  xmlValidation="false" xmlNamespaceAware="false">
  ....
  </Host>
  在他们之间可以添加一个<Context>元素,如:<Context path="/axis" reloadable="true" docBase="axis" workDir="webapps/axis/work"/>,其中属性path代表是网络访问的上下文路径,reloadable表示可以在运行时在classes与lib文件夹下自动加载类包,docBase属性表示你的应用程序的路径,在windows在如:docBase="E:\Sun\axis",workDir表示是缓存文件的放置地点,可以方便跨平台移植时不用重编译。这样,你的应用程序就可以放到硬盘上的任意地方了。还有一个方法可以做到这点(推荐):编写一个xml文件,然后放到tomcat目录/conf/Catalina/<相应的网站>/目录下,如:现在我有个应用程序ACMEWeb,我编了一个文件ACMEWeb.xml内容如下:
  <Context path="/ACMEWeb" reloadable="true" docBase="E:\eclipseproject\ACMEWeb" workDir="E:\eclipseproject\ACMEWeb\work" />
  我把它放到了tomcat目录/conf/Cataline/localhost下,在浏览器打开http://localhost/ACMEWeb 就会转向我放在E:\eclipseproject\ACMEWeb下的程序了。