随笔 - 3, 文章 - 152, 评论 - 17, 引用 - 0
数据加载中……

Tomcat5.5的基本配置说明

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下的程序了
补充两点:
1.针对网页中文get提交参数情况,http connector可能需要加上
URIEncoding="GBK"防止乱码。若post提交则无所谓
2.tomcat5.5版本以上,独立的context xml配置文件既可以放到<tomcat_home>/conf/Catalina/<site name>/,也可放到<your web app's dir>/META-INF/ 下

posted on 2005-02-15 11:32 阅读(366) 评论(0)  编辑  收藏 所属分类: J2ee


只有注册用户登录后才能发表评论。


网站导航: