| |||||||||||
| |||||||||||
Tomcat 6 - sample server.xml file
Configuring and Controlling Tomcat example from a Well House Consultants training course
More on Configuring and Controlling Tomcat [link]
Source code: 6_server.xml Module: A654
<?xml version='1.0' encoding='utf-8'?>
<!-- +++++++++++++++++++++++++++++++++++++++++++++ This file is one of a suite of configuration files ... context.xml web.xml tomcat_user.xml server.xml that we set up on our "deploying Apache httpd and Tomcat" course to configure Tomcat and web applications that are running within it. In these sample, we have stripped out many of the optional facilities to help you see the bare-bones essentials, and we have also added in a handful of other facilities which are not enabled by default; of course, there is no "one size fits all" so you should tailor to meet your own needs. These samples are for release [version] 6.0 of Apache Tomcat. Please see our other samples (or ask) for earlier versions. +++++++++++++++++++++++++++++++++++++++++++++++++++ --> <!-- **** We have moved the server port and changed the shutdown word - to provide a little better security. I wonder how many tomcat servers there are in the world that you can address on port 8005 and say SHUTDOWN to ... and have the whole thing stop! **** --> <Server port="5005" shutdown="SHUTUP"> <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> <Listener className="org.apache.catalina.core.JasperListener" /> <!-- **** The Global Naming Resource is required for the Tomcat Manager application that we use on our courses, and you'll find that web applications use it too. It's a sensible way of providing parameters that are configured at a server admin level (e.g. where the SQL database server is). --> <GlobalNamingResources> <Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" /> </GlobalNamingResources> <!-- **** A server contains a service which contains an engine which contains a host .... **** --> <Service name="Catalina"> <!-- **** We'll allow connection on port 5080 as a regular web connection (http), on port 5082 ALSO as a regular web connection ( but in practise we may change a few parameters on that port later; we need two http ports in case we want to differentiate between public facing and back end [proxied] servers which are contacted by other servers rather than by browsers. We've also provided an ajp port, to allow for traffic using the ajp protocol; the ajp protocol carries the same 'payload' as http essentially, but much more efficiently. *** --> <Connector port="5080" connectionTimeout="20000" /> <Connector port="5009" protocol="AJP/1.3" redirectPort="8443" /> <Connector port="5082" protocol="HTTP/1.1" connectionTimeout="20000" /> <!-- **** The commented out example with the jvmRoute is what you'll use if you're load balancing and need sticky sessions - i.e. if you need each retruning browser to come back to the same member of your balancing group, like getting on the phone and always asking for the same member of the customer service team because he / she knows your case *** --> <!-- You should set jvmRoute to support load-balancing via AJP ie : <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1"> --> <Engine name="Catalina" defaultHost="localhost"> <!-- The following is to support Tomcat Manager Application --> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> <!-- **** The following will be "all change" before you go live! You'll want to change the name to reflect the domain name you're serving, the appBase to reflect where you have moved your web applications to (PLEASE move them out of the /usr/local/tomcat area, as you'll want a different backup strategy for your Tomcat server and the applications that it's serving; application data will change frequently, but I hope Tomcat won't. *** --> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <!-- **** Also be aware (just above) that the unpackWARs and autoDeploy settings are very much in "Research and Development mode" and you're unlikely on a live production server to want files that are copied into a certain directory to be picked up, unpacked and run for the world to see automatically!! *** --> <!-- **** If you want a login to one application such as Tomcat Manager to log you in to all applications on the server, uncomment the following tag. If you want individual logins for each application, leave "as is" --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> </Host> </Engine> </Service> </Server> Learn about this subject
This module and example are covered on the following public courses:
* Deploying Apache and Tomcat * Deploying Java Applications on Linux / Unix Also available on on site courses for larger groups Books covering this topic
Yes. We have over 700 books in our library. Books
covering Lamp deployment are listed here and when you've selected a
relevant book we'll link you on to Amazon to order.
Other Examples
This example comes from our "Configuring and Controlling Tomcat" training module. You'll find a description of the topic and some
other closely related examples on the "Configuring and Controlling Tomcat" module index page.
Full description of the source code
You can learn more about this example on the training courses listed on this page,
on which you'll be given a full set of training notes.
Many other training modules are available for download (for limited use) from our download centre under an Open Training Notes License. Other resources
• Our Solutions centre provides a number of longer technical articles.
• Our Opentalk forum archive provides a question and answer centre. • The Horse's mouth provides a daily tip or thought. • Further resources are available via the resources centre. • All of these resources can be searched through through our search engine • And there's a global index here. Purpose of this website
This is a sample program, class demonstration or answer from a
training course. It's main purpose
is to provide an after-course service to customers who have attended our
public private or
on site courses, but the examples are made
generally available under conditions described below.
Web site author
Conditions of use
Past attendees on our training courses are welcome to use individual
examples in the course of their programming, but must check
the examples they use to ensure that they are suitable for their
job. Remember that some of our examples show you how not to do
things - check in your notes. Well House Consultants take no responsibility
for the suitability of these example programs to customer's needs.
This program is copyright Well House Consultants Ltd. You are forbidden from using it for running your own training courses without our prior written permission. See our page on courseware provision for more details. Any of our images within this code may NOT be reused on a public URL without our prior permission. For Bona Fide personal use, we will often grant you permission provided that you provide a link back. Commercial use on a website will incur a license fee for each image used - details on request. |
| ||||||||||
PH: 01144 1225 708225 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho PAGE: http://www.wellho.net/resources/ex.php4 • PAGE BUILT: Sun Oct 11 14:50:09 2020 • BUILD SYSTEM: JelliaJamb |