Tomcat服务器配置以及相关配置文件介绍

摘自:http://blog.163.com/ny_lonely/blog/static/18892427320136925044357/

context.xml 文件

配置属性说明

用于配置web应用部署时的物理目录与虚拟目录的映射等。由于属性太多本文只介绍几种常见的配置、附上全部属性链接,请猛戳—>点我

Context的可以配置在以下地方配置:

1:$CATALINA_BASE / conf / context.xml 文件中配置。如果你在这个地方配置、那么这个配置文件将会被所有的webApp共享 。(不建议使用)

2:$CATALINA_BASE / conf / {enginename} / {hostname} / context.xml 如果在这个位置配置context。那么这个配置将会被这个主机上的webaopp共享。(不建议使用)

3:$CATALINA_BASE /conf / {enginename} /{hostname} / 在这个目录下、新建一个XML文件、那么这个文件的名字将会用于 context的path属性、多级路径使用"#"分开(Web1#User.xml:表示地址

为/Web1/User)。默认时使用ROOT.XML。表示缺损的应用。(最简单的例子就是在进入tomcat服务器时会默认进入有只猫的那个管理页面)(这个配置不用重启服务器,如果context直接配置在server.xml

中时。每当修改后、都需要重新启动服务器。)。在server.xml中配置缺损应用时、只需要将path配置成“”就可以了。(<Context path="" basepath="物理路径")。(建议使用)

4:tomcat服务器文件中的webapp目录下的所有文件夹都是一个应用。这个时候不需要自己动手配置、服务器默认将文件夹名映射成虚拟目录名称。(不建议使用)

5:还可以通过/META-INF / context.xml 来配置、这个是在web应用中自己添加的。配置和其它一样。(建议使用)

注意:更多有关针对单个站的配置尽可能的配置在web.xml文件中。

server.xml 文件

这个文件已经有前辈整理了这里不再重复赘述、

详细配置请猛戳"Server.xml配置属性详解"

顺便放上web.xml中属性的详解"Web.xml属性说明"

配置属性说明

tomcat-users.xml 文件

配置属性说明

配置Tomcat的管理用户(通过web来管理和查看tomcat运行情况以及部署的webApp)文件在“conf”文件夹下。

文档结构如下,是一个名为:tomcat-users.xml的xml格式文件


<?xml version=‘1.0‘ encoding=‘utf-8‘?>

<tomcat-users>

<role rolename="manager-gui"/>

<user username="AlexChen" password="admin" roles="manager-gui"/>

</tomcat-users>

此文档是一个xml配置文件、其中主要配置节点为<tomcat-users>如果需要新添角色和用户。只需要在<tomcat-users>节点中

添加<role rolename=""/>和<user username="uName" password="uPwd" roles="roles"/>这样两个子节点就可以了。值得

注意的是、role节点包含有以下4个角色其它角色(摘自apache官网)可以点击进入查看角色说明:

1:“manager-gui”:Allows access to the html interface(允许通过web的方式登录查看服务器信息)。

2:“manager-script”: Allows access to the plain text interface(允许以纯文本的方式访问)。

3:“manager-jmx”: Allows access to the JMX proxy interface(允许jmx的代理访问)。

4:“manager-status”: Allows access to the read-only status pages(允许以只读状态访问)。

5:“manager”:管理员(权限明细暂时不明)。

6:“admin”:同5。

web.xml

Web应用程序描述文件是Web应用程序的配置文件。

功能


01)   ServletContext的初始化参数

02)   Servlet / JSP的定义

03)   Servlet / JSP的映射

04)   MIME类型定义

05)   Session的配置

06)   MIME类型的映射

07)   欢迎文件列表

08)   错误页面的设置

09)   安全相关设置

10)   地区和编码的设置

11)   利用JNDI取得资源

12)   Tag Library的映射设定

它由一个根元素<web-app></web-app>,它的内部元素结构如下:

<description>元素
为父元素提供一个文本描述信息。有一个可选属性xml:lang
例:

[xhtml] view plaincopyprint?

  1. <description  xml:lang = ”zh”>在线网络书店</description>

<display-name>元素
为这个元素指定一个简短的名字。有一个可选属性xml:lang

[xhtml] view plaincopyprint?

  1. <display-name  xml:lang = “en”>bookstore</display-name>

<icon>元素:
<small-icon>,<larger-icon>指定的大小图标,扩展名必须为 . gif或. jpeg,小图标的大小为16*16 pixel,大图标大小为32*32 pixel。在图形界面的开发工具中将用于表示父元素。
例:

[xhtml] view plaincopyprint?

  1. <icon>
  2. <small-icon> / images / small.gif </small-icon>
  3. <large-icon> / images / large.gif </large-icon>
  4. </icon>

<distributable>元素:

为空元素标签。指定是否可分布式处理,出现这个元素代表此Web工程已被设计能在多个Web容器间分散执行。用于指定这个Web应用程序是否可被布置到分布式的Web容器中。

<context-param>元素

用于声明Servlet上下文的初始化参数。
<param-name>:指定叁数的名字
<param-value>:指定参数的值

在Serlvet中可通过如下方式获取这些参数信息

[xhtml] view plaincopyprint?

  1. String  s = getSerlvetContext ( ) . getInitParameter ( “参数名”);

<filter>元素:
用于设置定一个过滤器。拦载过程发生在Web容器调用Serlvet其间。

Web容器在初始化时将这些信息封装到FilterConfig中,获得Filter实例对象时,Web容器通过调用Filter.init( )方法将这些信息传递给实例对象。

[xhtml] view plaincopyprint?

  1. <filter>
  2. <filter-name>ssi</filter-name>
  3. <filter-class>org.apache.catalina.ssi.SSIFilter</filter-class>
  4. <init-param>
  5. <param-name>contentType</param-name>
  6. <param-value>text/x-server-parsed-html(;.*)?</param-value>
  7. </init-param>
  8. </filter>

<filter-mapping>元素:

用于设置过滤器负责过滤的URL指定的一类或者直接指定的Servlet。
<filter-name>
<url-pattern>  或  <servlet-name>
<dispatcher>   REQUEST  |  INCLUDE  |  FORWARD  |  ERROR  指定Filter所拦截的Servlet容器调用资源的方式,默认为REQUEST,只对正常请求资源拦截。

例:

[xhtml] view plaincopyprint?

  1. <filter-mapping>
  2. <filter-name>All JSP</filter-name>
  3. <url-patter> / * . jsp</url-pattern>   所拦截的请求路径。
  4. </filter-mapping>

<listener>元素:

用于在Web应用程序设置监听器,实现用Web程序的监听。
<description>
<display-name>
<icon>
<listener-class>:指定的是监听器的完整路径。

例:

[xhtml] view plaincopyprint?

  1. <listener>
  2. <listener-class> org.apache.SessionListener </listener-class>
  3. </listener>

<servlet>元素:

于监听Web应用程序中的ServletContext,HttpSession和ServletRequest等域对象的属性的创建与销毁,及修改的事
件。一个Web应用程序可注册多个Serlvet事件监听器,Web服务启动时,顺序加载Web.xml中的这些Serlvet监听器。

[xhtml] view plaincopyprint?

  1. <description></description>
  2. <display-name></display-name>
  3. <icon></icon>
  4. <servlet-name></servlet-name>
  5. <servlet-class></servlet-class> 或 <jsp-file></jsp-file>
  6. <init-param>
  7. <description>
  8. <param-name>
  9. <param-value>
  10. </init-param>
  11. <load-on-startup></load-on-startup>
  12. <run-as>
  13. <description></description>
  14. <role-name></role-name>
  15. </run-as>
  16. <security-role-ref>
  17. <description></description>
  18. <role-name></role-name>
  19. <role-link></role-link>
  20. </security-role-ref>

Web容器初始化应用程序时将这些信息存储在ServletConfig中,获得Serlvet实例时,Web容器能过Servlet.init( )将ServletConfig对象传递给Serlvet实例对象。

<jsp-file>元素:

指定Web应用程序中JSP文件的完整路径,以斜杠开头,用于对一个JSP文件做URL映射。
<jsp-file>/bookstore/BookList.jsp</jsp-file>

<load-on-startup>元素

当Web应用程序启动时,此Serlvet被加载的顺序,值为一个整数,如果这个值为负数或零,表示在首次使用到时才被加载。正整数,值越小,表示越早被加载。

<run-as>元素:

用于指定可以执行此Servlet的角色。<role-name>可有多项用于指定用于角色列表。

<security-role-ref>元素

注意:<load-on-startup> , <run-as> , <role-link>只能出现0 次或一次。 

<servlet-mapping>元素


用于在Servlet和URL之间定义一种映射关系。

<servlet-name>:给出的servlet名字必须是<servlet>元素中声明过的serlvet名字。

<url-pattern>:该路径是相对于Web应用程序上下文的路径。

例:

[xhtml] view plaincopyprint?

  1. <servlet-mapping>
  2. <servlet-name>servlet.Login</servlet-name>
  3. <url-pattern>/login</url-pattern>
  4. </servlet-mapping>

<session-config>元素
定义session的参数。定义这个Web站点所有session的有效期。为0表示永不过期,如web.xml没定义,则web容器必须设置HttpSession对象不活动存在的最长时间。
例:

[xhtml] view plaincopyprint?

  1. <session-timeout>分钟<session-timeout>

<mime-mapping>元素

在扩展名和MIME类型之间定义一个映射。
<extension> avi </extension> <!--指定扩展名-->
<mime-type> /x-msvideo </mime-type> <!--指定MIME类型-->

<welecom-file-list>元素
设置欢迎页面列表。Servlet容器会按照配置的先后顺序调用页面,依次寻找。

[xhtml] view plaincopyprint?

  1. <welcome-file> index.jsp </welcome-file>
  2. <welcome-file> index.html </welcome-file>

<error-page>元素
使用此功能需要打IE"工具"Internet取消"显示HTTP友好错误信息"

[xhtml] view plaincopyprint?

  1. <error-code>404<error-code> 或 <error-type>java.io.IOException<error-type>
  2. <location>/error.jsp</location> 注意此处的路径必须以斜杠开头。

<jsp-config>元素
为Web应用程序中的JSP文件提供全局的配置信息(对具有相同属性的多个页面进行统一定义)

[xhtml] view plaincopyprint?

  1. <taglib>
  2. <taglib-uri>使用标签库的URI标识,JSP的taglib可以经这个URI存取到TLD文件。
  3. <taglib-location>此标签库存放的位置
  4. </taglib>
  5. <jsp-property-group>
  6. <description>
  7. <display-name>
  8. <url-pattern><!--可以出现一次或多次。设定影响值的范围。例:/ *.jsp-->
  9. <el-ignored><!--true|false 是否忽略EL表达式-->
  10. <scripting-invalid><!--true | false 是否支持<% scripting %>表达式。
  11. <page-encoding><!--它与每个JSP页面pageEncoding属性功能相同-->
  12. <include-prelude><!--可出现多次。所有与url-pattern指令模式匹配的JSP文件的开头都会包含此文件内容。如果有多个时,按顺序依次包含到匹配的JSP页面头部分。文件以.jspf结尾-->
  13. <include-coda><!--它用与指令头尾。与上例似。文件名以.jspf结尾-->
  14. <is-xml> <!--指示一组文件是否必须作为XML文档来解释-->
  15. </jsp-property-group>

例:

[xhtml] view plaincopyprint?

  1. <jsp-config>
  2. <taglib>
  3. <taglib-uri>Taglib</ taglib>
  4. <taglib-location>/WEB-INF/tlds/MyTaglib.tld</taglib-location>
  5. </taglib>
  6. <jsp-property-group>
  7. <description>JSP example!</description>
  8. <display-name>JSPConfig</ display-name>
  9. <url-pattern>/jsp/*</ url-pattern>
  10. <el-ignored>true</ el –ignored>
  11. <page-encoding>GB2312</page-encoding>
  12. <scripting-invalid>true</script-invalid>
  13. <include-prelude>/include/prelude.jspf</include-prelude>
  14. <include-coda>/include/coda.jsp</include-coda>
  15. </jsp-propertry-group>
  16. </jsp-config>

<security-constraint>元素


声明受保护的Web资源及能够访问受保护资源所采用的协议。
<display-name>

<web-resource-collection> 至少一个或多个

<web-resource-name>  指令一个名称标识。资源名称。

<description>
<url-pattern>  指定URL约束,受保护的URL路径

<http-method> 指定那些方法访问该资源时受保护。如没有指定则全部受保护。

<auth-constraint> 指定可以访问受保护资源的角色列表

<description>
<role-name> 指定角色名称。如果为*则表示所有角色均可访问。

<user-data-constraint> 指定客户端Web容器之间的通信数据应如何被保护。

<description>

<transport-guarantee>取值:NONE , INTEGRAL , CONFIDENTIAL其中NONE表示不加限制,即可使用所有通信协议。其它两种只能通过HTTPS协议访问受保护的资源。

<login-config>元素

<auth-method> 配置WEB应用程序的验证机制。BASIC | DIGEST | FORM | CLIENT-CERT或是产品供应商指定的验证模式。
<realm-name>指定在HTTP基本验证中使用的领域的名称。
<form-login-config> 基于FORM验证的相关配置。
<form-login-page>
<form-error-page>

<security-role>元素

定义一个安全角色。
<description>
<role-name>

<env-entry>元素

声明Web应用程序的环境变量。
<env-entry-name>:指字部署组件的环境变量的名字。
<env-entry-type>:指定环境变量的值所属的Java类型的完整限定名
<env-entry-value>:为环境变量指定一个值。

<ejb-ref>元素:

声明对一个EJB的Home接口的引用。
<description>
<ejb-ref-name>:指定在部署组件的代码中使用的EJB引用的名字


<ejb-ref-type>元素

指定引用的EJB类型
<home>:定义了引用EJB的Home接口的完整限定名
<remote>:定义了引用EJB的Remote接口的完整限定名
<ejb-link>:指定一个链接到EJB的引用

<ejb-local-ref>元素


<description>
<ejb-ref-name>:指定在部署组件的代码中使用的EJB引用的名字。

<ejb-ref-type>:指定引用的EJB类型。

<local-home>:定义了引用EJB的Home接口的完整限定名。

<local>:定义了引用EJB的Remote接口的完整限定名。

<ejb-link>:指定一个链接到EJB的引用。

<resource-ref>元素

<description>
<res-ref-name>:指定所引用资源相对于java:comp/env上下JNDI名,该名字在部署文件中必须是唯一的。
<res-type>:所属数据类型,必须是Java类的完整限定名。
<res-auth>:Container和Application
<res-sharing-scope>:是否可以共享。 Shareable | Unshareable 默认为Shareable

例:

[xhtml] view plaincopyprint?

  1. <resource-ref>
  2. <description>JNDI JDBC of Bookstore</description>
  3. <rec-ref-name>jdbc/sample_db</rec-ref-name>
  4. <res-type>javax.sql.DataSource </res-type>
  5. <res-type>Application|Container</res-type>
  6. </resource-ref>

<resource-env-ref>元素

<description>
<resource-env-ref-name>:指定资源环境名字。对于java:comp/env上下JNDI名
<resource-env-ref-type>:指定资源环境引用的类型。

<local-encoding-mapping-list>元素

指定语言环境和编码之间的映射关素。
<locale-encoding-mapping>
<locale>语言环境
<encoding>指定编码。

例:

[xhtml] view plaincopyprint?

    1. <local-encoding-mapping>
    2. <local>ja</local>
    3. <encoding>shift_JIS</encoding>
    4. </local-encoding-list>
时间: 2024-10-15 06:36:27

Tomcat服务器配置以及相关配置文件介绍的相关文章

Tomcat学习—Tomcat的简介和目录以及配置文件介绍(Windows环境)

今天学习TOMCAT,主要学习的是Tomcat的目录结构,配置文件!1:Tomcat简介Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选.对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML页面的访问请求.实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apac

MyEclipse相关用法介绍

MyEclipse相关用法介绍 ================================================================================ 编辑: Ctrl+Shift+L      显示所有快捷键 Ctrl+K        参照选中的词(Word)快速定位到下一个 Ctrl+Shift+K      参照选中的词(Word)快速定位到上一个 Ctrl+O         快速显示OutLine Ctrl+T        快速显示当前类的

Bigbluebutton服务执行过程及相关配置文件

BigBlueButton服务列表 BigBlueButton由许多开源的服务组成,看似很麻烦,实际上拆分开每一个服务就很简单了,组件化平台化.究竟BBB都用到了哪些开源服务?我们来列举一下,名称均带有对应官网链接.1.Ubuntu乌班图操作系统,友好的用户交互界面:2.Flex SDK,高效构建Web应用程序,基于所有浏览器的开源框架,AS3编写客户端软件的SDK:3.Ghostscript文档转换:4.Grails开源Web框架:5.ActiveMQ(官网有介绍,但未发现使用位置):6.Im

LNMP架构应用实战——Nginx服务配置文件介绍

LNMP架构应用实战--Nginx服务配置文件介绍 nginx的配置文件比较简单,但功能相当强大,可以自由灵活的进行相关配置,因此,还是了解下其配置文件的一此信息 1.Nginx服务目录结构介绍 安装完成后,在安装路径下就会有Nginx目录信息 [[email protected] application]# tree nginx nginx +-- client_body_temp +-- conf          #nginx服务配置文件目录 |   +-- fastcgi.conf  

Tomcat服务器配置虚拟主机

3.1配置虚拟主机 配置虚拟主机就是配置一个网站. 在Tomcat服务器配置一个虚拟主机(网站),需要修改conf文件夹下的server.xml这个配置文件,使用Host元素进行配置,代开server.xml,可以看到Tomcat服务器自带的一个 名称为localhost的虚拟主机(网站),如下图所示: <Host name="www.kaka.com" appBase="F:\JavaWebApps"></Host> 这里我们新配置一个虚拟

【ALearning】第五章 Android相关组件介绍(一)Activity

Android应用程序由一些零散的有联系的组件组成,通过一个工程manifest绑定在一起.在manifest中,描述了每一个组件以及组件的作用,其中有6个组件,它们是Android应用程序的基石. Activities(活动) Service(服务) Content Provider(内容提供者) Intent(意图) Broadcast Receiver(广播接收器) Notification(通知) 在这里我们提到了组件(Component)的概念,组件(Component)是对数据和方法

Cas(03)——Cas Server中各配置文件介绍

Cas Server中各配置文件介绍 Cas Server中所有的配置文件都是放在WEB-INF目录及其子目录下的. 在WEB-INF/classes下的配置文件有: cas-theme-default.properties:该文件存放的是css文件的路径,用户可以在这里指定使用的css文件为自定义的css文件,也可以更改配置文件中对应的css文件已更改默认的样式. 系列messages_*.properties:国际化支持对应的资源文件. default_views.properties和pr

syslog相关内容介绍

syslog相关内容介绍 简介: syslog server 从网络设备接收系统日志消息,并实时显示它们. 系统日志消息可以使用以下事件进行处理: 1.在滚动窗口中显示消息 2.将消息记录到文本文件 3.将消息转发到另一个系统日志服务器 4.记录到ODBC数据库 5.记录到NT应用程序事件日志 6.通过SMTP将消息通过电子邮件发送给某人 7.运行外部程序,如寻呼通知系统 8.发送SNMP陷阱消息 系统syslog内容的相关介绍 安装源码包,既不影响系统里面运行的syslog,也由于二者容易冲突

Tomcat服务器配置详解

Tomcat服务器是一个免费的开源web应用服务器,属于轻量级应用服务器,在中小型系统和并发用户不是很多的场合中被普遍使用,是开发和测试JSP程序的首选.一般来说,Tomcat虽然和apache或者Nginx这些web服务器一样,具有处理HTML页面的功能,然而由于其处理静态页面的能力远不如apache或者Nginx,所以Tomcat一般是作为一个servlet和JSP容器,单独运行在后端. 关于Tomcat服务器的部署过程及应用环境,请参考博文:https://blog.51cto.com/1