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>

猜你喜欢

转载自www.cnblogs.com/hujingnb/p/10236008.html