init
This commit is contained in:
304
webapps/docs/introduction.xml
Normal file
304
webapps/docs/introduction.xml
Normal file
@@ -0,0 +1,304 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<!DOCTYPE document [
|
||||
<!ENTITY project SYSTEM "project.xml">
|
||||
]>
|
||||
<document url="introduction.html">
|
||||
|
||||
&project;
|
||||
|
||||
<properties>
|
||||
<author email="rslifka@sfu.ca">Robert Slifka</author>
|
||||
<title>Introduction</title>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
|
||||
<section name="Table of Contents">
|
||||
<toc/>
|
||||
</section>
|
||||
|
||||
<section name="Introduction">
|
||||
|
||||
<p>For administrators and web developers alike, there are some important bits
|
||||
of information you should familiarize yourself with before starting out. This
|
||||
document serves as a brief introduction to some of the concepts and
|
||||
terminology behind the Tomcat container. As well, where to go when you need
|
||||
help.</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section name="Terminology">
|
||||
|
||||
<p>In the course of reading these documents, you will run across a number of
|
||||
terms; some specific to Tomcat, and others defined by the
|
||||
<a href="https://wiki.apache.org/tomcat/Specifications">Servlet and
|
||||
JSP specifications</a>.</p>
|
||||
|
||||
<ul>
|
||||
<li><strong>Context</strong> - In a nutshell, a Context is a
|
||||
web application.</li>
|
||||
</ul>
|
||||
<p>That is it. If you find any more terms we need to add to this section, please
|
||||
do let us know.</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section name="Directories and Files">
|
||||
|
||||
<p>These are some of the key tomcat directories:</p>
|
||||
|
||||
<ul>
|
||||
<li><strong>/bin</strong> - Startup, shutdown, and other scripts. The
|
||||
<code>*.sh</code> files (for Unix systems) are functional duplicates of
|
||||
the <code>*.bat</code> files (for Windows systems). Since the Win32
|
||||
command-line lacks certain functionality, there are some additional
|
||||
files in here.</li>
|
||||
<li><strong>/conf</strong> - Configuration files and related DTDs. The most
|
||||
important file in here is server.xml. It is the main configuration file
|
||||
for the container.</li>
|
||||
<li><strong>/logs</strong> - Log files are here by default.</li>
|
||||
<li><strong>/webapps</strong> - This is where your webapps go.</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
|
||||
<section name="CATALINA_HOME and CATALINA_BASE">
|
||||
<p>Throughout the documentation, there are references to the two following
|
||||
properties:
|
||||
<ul>
|
||||
<li>
|
||||
<strong>CATALINA_HOME</strong>: Represents the root of your Tomcat
|
||||
installation, for example <code>/home/tomcat/apache-tomcat-9.0.10</code>
|
||||
or <code>C:\Program Files\apache-tomcat-9.0.10</code>.
|
||||
</li>
|
||||
<li>
|
||||
<strong>CATALINA_BASE</strong>: Represents the root of a runtime
|
||||
configuration of a specific Tomcat instance. If you want to have
|
||||
multiple Tomcat instances on one machine, use the <code>CATALINA_BASE</code>
|
||||
property.
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
If you set the properties to different locations, the CATALINA_HOME location
|
||||
contains static sources, such as <code>.jar</code> files, or binary files.
|
||||
The CATALINA_BASE location contains configuration files, log files, deployed
|
||||
applications, and other runtime requirements.
|
||||
</p>
|
||||
<subsection name="Why Use CATALINA_BASE">
|
||||
<p>
|
||||
By default, CATALINA_HOME and CATALINA_BASE point to the same directory.
|
||||
Set CATALINA_BASE manually when you require running multiple Tomcat
|
||||
instances on one machine. Doing so provides the following benefits:
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
Easier management of upgrading to a newer version of Tomcat. Because all
|
||||
instances with single CATALINA_HOME location share one set of
|
||||
<code>.jar</code> files and binary files, you can easily upgrade the files
|
||||
to newer version and have the change propagated to all Tomcat instances
|
||||
using the same CATALIA_HOME directory.
|
||||
</li>
|
||||
<li>
|
||||
Avoiding duplication of the same static <code>.jar</code> files.
|
||||
</li>
|
||||
<li>
|
||||
The possibility to share certain settings, for example the <code>setenv</code> shell
|
||||
or bat script file (depending on your operating system).
|
||||
</li>
|
||||
</ul>
|
||||
</subsection>
|
||||
<subsection name="Contents of CATALINA_BASE">
|
||||
<p>
|
||||
Before you start using CATALINA_BASE, first consider and create the
|
||||
directory tree used by CATALINA_BASE. Note that if you do not create
|
||||
all the recommended directories, Tomcat creates the directories
|
||||
automatically. If it fails to create the necessary directory, for example
|
||||
due to permission issues, Tomcat will either fail to start, or may not
|
||||
function correctly.
|
||||
</p>
|
||||
<p>
|
||||
Consider the following list of directories:
|
||||
<ul>
|
||||
<li>
|
||||
<p>
|
||||
The <code>bin</code> directory with the <code>setenv.sh</code>,
|
||||
<code>setenv.bat</code>, and <code>tomcat-juli.jar</code> files.
|
||||
</p>
|
||||
<p>
|
||||
<i>Recommended:</i> No.
|
||||
</p>
|
||||
<p>
|
||||
<i>Order of lookup:</i> CATALINA_BASE is checked first; fallback is provided
|
||||
to CATALINA_HOME.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
The <code>lib</code> directory with further resources to be added on
|
||||
classpath.
|
||||
</p>
|
||||
<p>
|
||||
<i>Recommended:</i> Yes, if your application depends on external libraries.
|
||||
</p>
|
||||
<p>
|
||||
<i>Order of lookup:</i> CATALINA_BASE is checked first; CATALINA_HOME is
|
||||
loaded second.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
The <code>logs</code> directory for instance-specific log files.
|
||||
</p>
|
||||
<p>
|
||||
<i>Recommended:</i> Yes.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
The <code>webapps</code> directory for automatically loaded web
|
||||
applications.
|
||||
</p>
|
||||
<p>
|
||||
<i>Recommended:</i> Yes, if you want to deploy applications.
|
||||
</p>
|
||||
<p>
|
||||
<i>Order of lookup:</i> CATALINA_BASE only.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
The <code>work</code> directory that contains temporary working
|
||||
directories for the deployed web applications.
|
||||
</p>
|
||||
<p>
|
||||
<i>Recommended:</i> Yes.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
The <code>temp</code> directory used by the JVM for temporary files.
|
||||
</p>
|
||||
<p>
|
||||
<i>Recommended:</i> Yes.
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
We recommend you not to change the <code>tomcat-juli.jar</code> file.
|
||||
However, in case you require your own logging implementation, you can
|
||||
replace the <code>tomcat-juli.jar</code> file in a CATALINA_BASE location
|
||||
for the specific Tomcat instance.
|
||||
</p>
|
||||
<p>
|
||||
We also recommend you copy all configuration files from the
|
||||
<code>CATALINA_HOME/conf</code> directory into the
|
||||
<code>CATALINA_BASE/conf/</code> directory. In case a configuration file
|
||||
is missing in CATALINA_BASE, there is no fallback to CATALINA_HOME.
|
||||
Consequently, this may cause failure.
|
||||
</p>
|
||||
<p>
|
||||
At minimum, CATALINA_BASE must contain:
|
||||
<ul>
|
||||
<li>conf/server.xml</li>
|
||||
<li>conf/web.xml</li>
|
||||
</ul>
|
||||
That includes the <code>conf</code> directory. Otherwise, Tomcat fails
|
||||
to start, or fails to function properly.
|
||||
</p>
|
||||
<p>
|
||||
For advanced configuration information, see the
|
||||
<a href="https://tomcat.apache.org/tomcat-9.0-doc/RUNNING.txt">
|
||||
RUNNING.txt
|
||||
</a> file.
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name="How to Use CATALINA_BASE">
|
||||
<p>
|
||||
The CATALINA_BASE property is an environment variable. You can set it
|
||||
before you execute the Tomcat start script, for example:
|
||||
<ul>
|
||||
<li>On Unix: <code>CATALINA_BASE=/tmp/tomcat_base1 bin/catalina.sh start</code></li>
|
||||
<li>On Windows: <code>CATALINA_BASE=C:\tomcat_base1 bin/catalina.bat start</code></li>
|
||||
</ul>
|
||||
</p>
|
||||
</subsection>
|
||||
</section>
|
||||
|
||||
|
||||
<section name="Configuring Tomcat">
|
||||
|
||||
<p>This section will acquaint you with the basic information used during
|
||||
the configuration of the container.</p>
|
||||
|
||||
<p>All of the information in the configuration files is read at startup,
|
||||
meaning that any change to the files necessitates a restart of the container.
|
||||
</p>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section name="Where to Go for Help">
|
||||
|
||||
<p>While we've done our best to ensure that these documents are clearly
|
||||
written and easy to understand, we may have missed something. Provided
|
||||
below are various web sites and mailing lists in case you get stuck.</p>
|
||||
|
||||
<p>Keep in mind that some of the issues and solutions vary between the
|
||||
major versions of Tomcat. As you search around the web, there will be
|
||||
some documentation that is not relevant to Tomcat <version-major/>, but
|
||||
only to earlier versions.</p>
|
||||
|
||||
<ul>
|
||||
<li>Current document - most documents will list potential hangups. Be sure
|
||||
to fully read the relevant documentation as it will save you much time
|
||||
and effort. There's nothing like scouring the web only to find out that
|
||||
the answer was right in front of you all along!</li>
|
||||
<li><a href="https://wiki.apache.org/tomcat/FAQ">Tomcat FAQ</a></li>
|
||||
<li><a href="https://wiki.apache.org/tomcat/">Tomcat WIKI</a></li>
|
||||
<li>Tomcat FAQ at <a href="http://www.jguru.com/faq/home.jsp?topic=Tomcat">jGuru</a></li>
|
||||
<li>Tomcat mailing list archives - numerous sites archive the Tomcat mailing
|
||||
lists. Since the links change over time, clicking here will search
|
||||
<a href="https://www.google.com/search?q=tomcat+mailing+list+archives">Google</a>.
|
||||
</li>
|
||||
<li>The TOMCAT-USER mailing list, which you can subscribe to
|
||||
<a href="https://tomcat.apache.org/lists.html">here</a>. If you don't
|
||||
get a reply, then there's a good chance that your question was probably
|
||||
answered in the list archives or one of the FAQs. Although questions
|
||||
about web application development in general are sometimes asked and
|
||||
answered, please focus your questions on Tomcat-specific issues.</li>
|
||||
<li>The TOMCAT-DEV mailing list, which you can subscribe to
|
||||
<a href="https://tomcat.apache.org/lists.html">here</a>. This list is
|
||||
<strong>reserved</strong> for discussions about the development of Tomcat
|
||||
itself. Questions about Tomcat configuration, and the problems you run
|
||||
into while developing and running applications, will normally be more
|
||||
appropriate on the TOMCAT-USER list instead.</li>
|
||||
</ul>
|
||||
|
||||
<p>And, if you think something should be in the docs, by all means let us know
|
||||
on the TOMCAT-DEV list.</p>
|
||||
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</document>
|
||||
Reference in New Issue
Block a user