1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3  Licensed to the Apache Software Foundation (ASF) under one or more
4  contributor license agreements.  See the NOTICE file distributed with
5  this work for additional information regarding copyright ownership.
6  The ASF licenses this file to You under the Apache License, Version 2.0
7  (the "License"); you may not use this file except in compliance with
8  the License.  You may obtain a copy of the License at
9
10      http://www.apache.org/licenses/LICENSE-2.0
11
12  Unless required by applicable law or agreed to in writing, software
13  distributed under the License is distributed on an "AS IS" BASIS,
14  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  See the License for the specific language governing permissions and
16  limitations under the License.
17-->
18<!-- Note:  A "Server" is not itself a "Container", so you may not
19     define subcomponents such as "Valves" at this level.
20     Documentation at /docs/config/server.html
21 -->
22<Server port="8005" shutdown="SHUTDOWN">
23  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
24  <!-- Security listener. Documentation at /docs/config/listeners.html
25  <Listener className="org.apache.catalina.security.SecurityListener" />
26  -->
27  <!-- APR library loader. Documentation at /docs/apr.html -->
28  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
29  <!-- Prevent memory leaks due to use of particular java/javax APIs-->
30  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
31  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
32  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
33
34  <!-- Global JNDI resources
35       Documentation at /docs/jndi-resources-howto.html
36  -->
37  <GlobalNamingResources>
38    <!-- Editable user database that can also be used by
39         UserDatabaseRealm to authenticate users
40    -->
41    <Resource name="UserDatabase" auth="Container"
42              type="org.apache.catalina.UserDatabase"
43              description="User database that can be updated and saved"
44              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
45              pathname="conf/tomcat-users.xml" />
46  </GlobalNamingResources>
47
48  <!-- A "Service" is a collection of one or more "Connectors" that share
49       a single "Container" Note:  A "Service" is not itself a "Container",
50       so you may not define subcomponents such as "Valves" at this level.
51       Documentation at /docs/config/service.html
52   -->
53  <Service name="Catalina">
54
55    <!--The connectors can use a shared executor, you can define one or more named thread pools-->
56    <!--
57    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
58        maxThreads="150" minSpareThreads="4"/>
59    -->
60
61
62    <!-- A "Connector" represents an endpoint by which requests are received
63         and responses are returned. Documentation at :
64         HTTP Connector: /docs/config/http.html
65         AJP  Connector: /docs/config/ajp.html
66         Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
67    -->
68    <Connector port="8080" protocol="HTTP/1.1"
69               connectionTimeout="20000"
70               redirectPort="8443" />
71    <!-- A "Connector" using the shared thread pool-->
72    <!--
73    <Connector executor="tomcatThreadPool"
74               port="8080" protocol="HTTP/1.1"
75               connectionTimeout="20000"
76               redirectPort="8443" />
77    -->
78    <!-- Define an SSL/TLS HTTP/1.1 Connector on port 8443 with HTTP/2
79         This connector uses the NIO implementation. The default
80         SSLImplementation will depend on the presence of the APR/native
81         library and the useOpenSSL attribute of the AprLifecycleListener.
82         Either JSSE or OpenSSL style configuration may be used regardless of
83         the SSLImplementation selected. JSSE style configuration is used below.
84    -->
85    <!--
86    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
87               maxThreads="150" SSLEnabled="true">
88        <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
89        <SSLHostConfig>
90            <Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
91                         type="RSA" />
92        </SSLHostConfig>
93    </Connector>
94    -->
95
96    <!-- Define an AJP 1.3 Connector on port 8009 -->
97    <!--
98    <Connector protocol="AJP/1.3"
99               address="::1"
100               port="8009"
101               redirectPort="8443" />
102    -->
103
104    <!-- An Engine represents the entry point (within Catalina) that processes
105         every request.  The Engine implementation for Tomcat stand alone
106         analyzes the HTTP headers included with the request, and passes them
107         on to the appropriate Host (virtual host).
108         Documentation at /docs/config/engine.html -->
109
110    <!-- You should set jvmRoute to support load-balancing via AJP ie :
111    <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
112    -->
113    <Engine name="Catalina" defaultHost="localhost">
114
115      <!--For clustering, please take a look at documentation at:
116          /docs/cluster-howto.html  (simple how to)
117          /docs/config/cluster.html (reference documentation) -->
118      <!--
119      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
120      -->
121
122      <!-- Use the LockOutRealm to prevent attempts to guess user passwords
123           via a brute-force attack -->
124      <Realm className="org.apache.catalina.realm.LockOutRealm">
125        <!-- This Realm uses the UserDatabase configured in the global JNDI
126             resources under the key "UserDatabase".  Any edits
127             that are performed against this UserDatabase are immediately
128             available for use by the Realm.  -->
129        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
130               resourceName="UserDatabase"/>
131      </Realm>
132
133      <Host name="localhost"  appBase="webapps"
134            unpackWARs="true" autoDeploy="true">
135
136        <!-- SingleSignOn valve, share authentication between web applications
137             Documentation at: /docs/config/valve.html -->
138        <!--
139        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
140        -->
141
142        <!-- Access log processes all example.
143             Documentation at: /docs/config/valve.html
144             Note: The pattern used is equivalent to using pattern="common" -->
145        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
146               prefix="localhost_access_log" suffix=".txt"
147               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
148
149      </Host>
150    </Engine>
151  </Service>
152</Server>
153