zoukankan      html  css  js  c++  java
  • tomcat中 server.xml

    tomcat服务器, 配置文件server.xml中的各项配置的意义

    <?xml version="1.0" encoding="UTF-8"?>
    <!-- 整个配置文件的根元素
        属性:
            shutdown: 表示关闭 Server 的指令
            port: Server接收shutdown指令的端口号,设为-1可以禁掉该端口。
        Server的主要任务:
            就是提供一个接口让客户端能够访问到这个Service集合
            同时维护它所包含的所有的Service的声明周期
            包括如何初始化、如何结束服务、如何找到客户端要访问的Service
     -->
    <Server port="8005" shutdown="SHUTDOWN">
      <!-- 代表一个 Engine 元素及一组与之相连的 Connector 元素 
            Service的作用: 
                是在 Connector 和 Engine 外面包了一层, 把它们组装在一起, 对外提供服务
                一个 Service 可以包含多个 Connector , 但是只能包含一个 Engine
                其中 Connector 的作用是从客户端接收请求, Engine 的作用是处理接收进来的请求
                Tomcat可以提供多个Service,不同的Service监听不同的端口
      -->
      <Service name="Catalina">
        <!-- 外部客户端发送请求到特定 Service 接口 
            属性:
                port: 请求的端口
                protocol: 请求的协议
                redirectPort: 规定当强制要求https而请求时http时,重定向到端口号为 8443 的 Connector
                connectionTimeout: 连接的超时时间
            Connector的主要功能: 
                是接收连接请求, 创建Request和Response对象用于和请求端交换数据
                然后分配线程让 Engine 来处理这个请求, 并把产生的Request和Response对象传给 Engine
        -->
        <Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="8443"/>
        <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
        <!-- Engine 包含了 Host ,一个Engine组件可以处理Service中的所有请求 
            属性:
                name: 用于日志和错误信息(在整个 Server 中唯一)
                defaultHost: 指定默认 host 名称,当接受的请求的 host 名不存在时,一律使用此值处理(因此必须与 下边的一个 Host 的 name 属性值匹配)
            Engine的作用:
                Engine组件在Service组件中有且只有一个
                Engine是Service组件中的请求处理组件
                Engine组件从一个或多个 Connector 中接收请求并处理,并将完成的响应返回给Connector,最终传递给客户端
                Engine组件中可以内嵌1个或多个Host组件,每个Host组件代表Engine中的一个虚拟主机
        -->
        <Engine defaultHost="localhost" name="Catalina">
        <!-- Host 包含了 Context ,一个Host组件可以处理发向一个特定虚拟主机的所有请求 
            属性:
                name: 制定虚拟主机的主机名
                unpackWARs: 是否将代表web应用的war文件解压(true:解压后运行web应用, false:直接使用war文件运行)
                deployOnStartup: 在服务器启动时是否检查新的web项目
                autoDeploy: 服务器在运行是是否定期检查行的web项目
            Host的作用:
                运行多个Web应用(一个 Context 代表一个Web应用),并负责安装、展开、启动和结束每个Web应用
                Host组件代表的虚拟主机,对应了服务器中一个网络名实体(”www.test.com”,”116.25.25.25”)
        -->
          <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
            <!-- 一个Context组件可以处理一个特定Web应用的所有请求
                Context的作用:
                    Context元素代表在特定虚拟主机上运行的一个Web应用
                    Context是Host的子容器, 每个Host中可以定义任意多的Context元素
                    这里并没有出现Context元素的配置, 这是因为,Tomcat开启了自动部署,Web应用没有在server.xml中配置静态部署,而是由Tomcat通过特定的规则自动部署。
    
             -->
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t &quot;%r&quot; %s %b" prefix="localhost_access_log" suffix=".txt"/>
          </Host>
        </Engine>
      </Service>
    </Server>
  • 相关阅读:
    Unity Glossary
    Event-Driven Programming: Introduction, Tutorial, History (Stephen Ferg 著)
    2019年11月
    2019年10月
    2019年9月
    LuaFramework 学习
    xLua 学习
    2019年8月
    【原】AFNetworking源码阅读(二)
    【原】AFNetworking源码阅读(一)
  • 原文地址:https://www.cnblogs.com/hujingnb/p/10236008.html
Copyright © 2011-2022 走看看