tomcat 目录文件夹作用(转)

(一):目录结构

tomcat的目录结构如下:  
目录名 简介  
bin 存放启动和关闭tomcat脚本  
conf 包含不同的配置文件,server.xml(Tomcat的主要配置文件)和web.xml  
work 存放jsp编译后产生的class文件  
webapp 存放应用程序示例,以后你要部署的应用程序也要放到此目录  。在(包)WEB-INF/src中写的.java文件会被自动编译成.class文件后转存到WEB-INF文件夹下的classes文件夹下。
logs 存放日志文件  
lib/japser/common 这三个目录主要存放tomcat所需的jar文件

(二):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方式记录的值更多

注 意:1:经过我测试,我设置Context 的path="",reloadable=true,然后放一个WAR文件到webapps目录,结果tomcat不能检测出此文件(重起tomcat可 以),而把此文件解压,则tomcat会自动检测出这个新的应用程序。如果不能自动检测WAR文件,我们可以利用下面管理中讲的方法来部署应用程序。

2: 默认的server.xml中,Realm元素只设置了一个className属性,但此文件中也包含几个通过JDBC连接到数据库进行验证的示例(被注 释掉了),通过Realm元素我们可以实现容器安全管理(Container Managed Security)。

3:还有一些元素我们没有介绍,如Parameter,loader,你可以通过tomcat的文档获取这些元素的信息。

(三):管理

1:配置  
在进行具体的管理之前,我们先给tomcat添加一个用户,使这个用户有权限来进行管理。

打开conf目录下的tomcat-users.xml文件,在相应的位置添加下面一行:

<user name="admin" password="admin" roles="standard,manager"/>

注意:这一行的最后部分一定是/>,tomcat的文档掉了/符号,如果没有/符号的话,tomcat重起时将无法访问应用程序。通过logs/catalina.out文件你可以看到这个错误的详细信息。

然后重起tomcat,在浏览器中输入http://localhost:8080/manager/,会弹出对话框,输入上面的用户名和密码即可。

2:应用程序列表  
在浏览器中输入http://localhost:8080/manager/list,浏览器将会显示如下的信息:

OK - Listed applications for virtual host localhost/ex:running:1/examples:running:1/webdav:running:0/tomcat-docs:running:0/manager:running:0/:running:0

面的信息分别为应用程序的路径,当前状态(running 或者stopped),与这个程序相连的session数。

3:重新装载应用程序  
在浏览器中输入 http://localhost:8080/manager/reload?path=/examples,浏览器显示如下:

OK - Reloaded application at context path /examples

表示example应用程序装载成功,如果我们将server.xml的Context元素的reloadable属性设为true(见上面表格),则没必要利用这种方式重新装载应用程序,因为tomcat会自动装载。

4:显示session信息  
在浏览器中输入http://localhost:8080/manager/sessions?path=/examples,浏览器显示如下:

OK - Session information for application at context path /examples Default maximum session inactive interval 30 minutes

5:启动和关闭应用程序  
在 浏览器中输入http://localhost:8080/manager/start?path=/examples和http: //localhost:8080/manager/stop?path=/examples分别启动和关闭examples应用程序。

6:部署及撤销部署  
WAR有两种组织方式,一种是按一定的目录结构组织文件,一种是一个后缀为WAR的压缩包,因此它的部署方式也有两种:  
(1):在浏览器中输入: http://localhost:8080/manager/install?path=/examples&war=file:/c:\examples  
就会将按目录结构组织的WAR部署

(2):如果输入: http://localhost:8080/manager/install?path=/examples&war=jar:file:/c:\examples.war!/  
就会将按压缩包组织的WAR部署,注意此url后半部分一定要有!/号。

部署后就可以用 http://localhost:8080/examples访问了。

在浏览器中输入: http://localhost:8080/manager/remove?path=/examples  
就会撤销刚才部署的应用程序。

(四):与apache集成

虽然tomcat也可以作web服务器,但其处理静态html的速度比不上apache,且其作为web服务器的功能远不如apache,因此我们想把apache和tomcat集成起来。

我们以linux系统为例介绍.

从apache网站下载 apache1.3.22源代码版本,然后使用如下命令配置安装apache:

mkdir /usr/local/apachetar zxvf apache.1.32.tar.gzcd apache.1.32./configure --prefix=/usr/local/apache --enable-module=so makemake install

注意configure命令指定目标安装目录,并且加入DSO(Dynamic Shared Object)支持,注意一定不要忘了这一个选项。

然后下载 webapp模块,将解压后mod_webapp.so文件放入apache的libexec目录,编辑apache的conf目录下的httpd.conf,在这个文件的最后加入下面三行:

LoadModule webapp_module libexec/mod_webapp.soWebAppConnection warpConnection warp localhost:8008WebAppDeploy examples warpConnection /examples/

第一行是加入webapp模块,如果编译apache时不增加DSO支持,则无法使用LoadModule指令,第二行指定tomcat与apache的连接,第三行指定部署那个应用,这两个指令使用格式如下:

WebAppConnection [connection name] [provider] [host:port]WebAppDeploy [application name] [connection name] [url path]

其中connection name指定连接名,provider只能是warp,port端口与你的tomcat的配置文件server.xml最后几行指定的要保持一致。文件如下:

<Service name="Tomcat-Apache"> <Connector className="org.apache.catalina.connector.warp.WarpConnector"port="8008" minProcessors="5" maxProcessors="75"enableLookups="true"acceptCount="10" debug="0"/>******</Service>

application name与你在tomcat中部署的应用名一致,url path指定访问这个应用的url。例如上面的例子可以通过http://localhost/examples/来访问tomcat中的examples应用。

(五):中文问题

一 般jsp的乱码问题可以通过在jsp中加入<%@ page contentType="text/html;charset=GB2312" %>来解决,至于servlet的乱码在可以使用servlet2.3中提供的 HttpServeletRequest.setCharacterEncoding函数。

tomcat 目录文件夹作用(转),布布扣,bubuko.com

时间: 2024-12-25 21:43:52

tomcat 目录文件夹作用(转)的相关文章

把war包放到Tomcat安装文件夹下,不能直接訪问的解决方式

临床表现: Tomcat启动后首页能訪问(http://localhost:8080/). 将自己写的一个webprojectwar包放到Tomcat安装文件夹下的/webapps以下(比方helloworld.war),通过浏览器訪问http://localhost:8080/helloworld,却无法訪问. 訪问时出现404错误,The requested resource is not available. 你可能使用了Spring等框架 你的可能在使用maven.而没有使用eclips

启用shopt 选项实现不使用 CD 命令进入目录/文件夹

众所周知,如果没有 cd 命令,我们无法 Linux 中切换目录.这个没错,但我们有一个名为 shopt 的 Linux 内置命令能帮助我们解决这个问题. shopt 是一个 shell 内置命令,用于设置和取消设置各种 bash shell 选项,由于它已安装,因此我们不需要再次安装它. 是的,我们可以在启用此选项后,可以不使用 cd 命令切换目录. 我们将在本文中向你展示如何操作.这是一个小的调整,但对于那些从 Windows 迁移到 Linux 的新手来说非常有用. 这对 Linux 管理

linux目录下各文件夹作用

??作为一个程序员,我们难免会接触到linux系统,特别是后台程序员,因为现在项目的部署环境基本都是在linux系统上进行的,所以了解linux系统是十分重要的,虽然我接触了linux系统已经有一段时间了,但是我基本知识完成了一些部署,并没有很深入地了解它,所以从现在开始,我们就一起来学习一下linux系统,推荐看<鸟哥的Linux私房菜-基础学习篇>这本书,可以了解到很多关于linux的知识,我平时使用过centos系统以及ubuntu,centos是部署在阿里云上的服务器,ubuntu是在

Tomcat下webapps夹中root文件夹作用及如何发布项目至root文件夹中

转载请注明出处: tomcat的root文件夹下面默认是tomcat的管理程序,但是如果你把自己的web项目发布到root下面的话,你可以不通过项目名直接访问你的项目,比如,你见了一个名为Test的项目,你要访问的路径一般是:http://localhost:8080/Test但是你把项目部署在root文件夹下之后,可以通过http://localhost:8080直接访问你的项目. 如何设置项目发布时自动发布到webapps文件夹下的root文件夹中,方法如下:选中我们要操作的Web项目,单击

tomcat-各文件夹作用解析

1.bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令). 重要: 很多环境变量的设置都在此处,例如可以设置JDK路径.TOMCAT路径 startup 用来启动tomcat shutdown 用来关闭tomcat 修改catalina可以设置tomcat的内存 2. conf目录主要是用来存放tomcat的一些配置文件. 重要: server.xml可以设置端口号.设置域名或IP.默认加载的项目.请求编

apache-tomcat下各个文件夹作用

[转] 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配置文件,在非注释行加入

TortoiseSVN设置忽略文件和目录文件夹

在多数项目中你总会有文件和目录不需要进行版本控制.这可能包括一些由编译器生成的文件,*.obj,*.lst,或许是一个用于存放可执行程序的输出文件夹.只要你提交修改,TortoiseSVN 就会在提交对话框的文件列表中显示出未版本控制文件.当然你可以关闭这个显示,不过你可能会忘记添加新的源文件. 最好的避免类似问题的方法是添加参考文件到该项目的忽略列表.这样他们就永远不会出现在提交对话框中,而真正的未版本控制文件则仍然列出. 方法一 在资源管理器中,右键一个未加入版本控制文件或目录,并从弹出菜单

linux文件夹作用

linux下的文件结构,看看每个文件夹都是干吗用的/bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示 /lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件 /sbin 系统管理命令,这里存放的是系统管理员使用的管理程序 /tmp 公用的临时文件存储点 /root 系统管理员的主目录(呵呵,特权

#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 JA