blob: 6c053defddbd3440b8b27e121fe5f0b2fd6aecf0 [file] [log] [blame]
Cheng Tang07b30872014-04-27 16:37:18 +08001<html><head><META http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Apache Tomcat 7 (7.0.42) - Tomcat Setup</title><meta name="author" content="Remy Maucherat"><style type="text/css" media="print">
2 .noPrint {display: none;}
3 td#mainBody {width: 100%;}
4 </style><style type="text/css">
5 code {background-color:rgb(224,255,255);padding:0 0.1em;}
6 code.attributeName, code.propertyName {background-color:transparent;}
7 </style><style type="text/css">
8 .wrapped-source code { display: block; background-color: transparent; }
9 .wrapped-source div { margin: 0 0 0 1.25em; }
10 .wrapped-source p { margin: 0 0 0 1.25em; text-indent: -1.25em; }
11 </style><style type="text/css">
12 p.notice {
13 border: 1px solid rgb(255, 0, 0);
14 background-color: rgb(238, 238, 238);
15 color: rgb(0, 51, 102);
16 padding: 0.5em;
17 margin: 1em 2em 1em 1em;
18 }
19 </style></head><body bgcolor="#ffffff" text="#000000" link="#525D76" alink="#525D76" vlink="#525D76"><table border="0" width="100%" cellspacing="0"><!--PAGE HEADER--><tr><td><!--PROJECT LOGO--><a href="http://tomcat.apache.org/"><img src="./images/tomcat.gif" align="right" alt="
20 The Apache Tomcat Servlet/JSP Container
21 " border="0"></a></td><td><h1><font face="arial,helvetica,sanserif">Apache Tomcat 7</font></h1><font face="arial,helvetica,sanserif">Version 7.0.42, Jul 2 2013</font></td><td><!--APACHE LOGO--><a href="http://www.apache.org/"><img src="./images/asf-logo.gif" align="right" alt="Apache Logo" border="0"></a></td></tr></table><table border="0" width="100%" cellspacing="4"><!--HEADER SEPARATOR--><tr><td colspan="2"><hr noshade size="1"></td></tr><tr><!--LEFT SIDE NAVIGATION--><td width="20%" valign="top" nowrap class="noPrint"><p><strong>Links</strong></p><ul><li><a href="index.html">Docs Home</a></li><li><a href="http://wiki.apache.org/tomcat/FAQ">FAQ</a></li><li><a href="#comments_section">User Comments</a></li></ul><p><strong>User Guide</strong></p><ul><li><a href="introduction.html">1) Introduction</a></li><li><a href="setup.html">2) Setup</a></li><li><a href="appdev/index.html">3) First webapp</a></li><li><a href="deployer-howto.html">4) Deployer</a></li><li><a href="manager-howto.html">5) Manager</a></li><li><a href="realm-howto.html">6) Realms and AAA</a></li><li><a href="security-manager-howto.html">7) Security Manager</a></li><li><a href="jndi-resources-howto.html">8) JNDI Resources</a></li><li><a href="jndi-datasource-examples-howto.html">9) JDBC DataSources</a></li><li><a href="class-loader-howto.html">10) Classloading</a></li><li><a href="jasper-howto.html">11) JSPs</a></li><li><a href="ssl-howto.html">12) SSL</a></li><li><a href="ssi-howto.html">13) SSI</a></li><li><a href="cgi-howto.html">14) CGI</a></li><li><a href="proxy-howto.html">15) Proxy Support</a></li><li><a href="mbeans-descriptor-howto.html">16) MBean Descriptor</a></li><li><a href="default-servlet.html">17) Default Servlet</a></li><li><a href="cluster-howto.html">18) Clustering</a></li><li><a href="balancer-howto.html">19) Load Balancer</a></li><li><a href="connectors.html">20) Connectors</a></li><li><a href="monitoring.html">21) Monitoring and Management</a></li><li><a href="logging.html">22) Logging</a></li><li><a href="apr.html">23) APR/Native</a></li><li><a href="virtual-hosting-howto.html">24) Virtual Hosting</a></li><li><a href="aio.html">25) Advanced IO</a></li><li><a href="extras.html">26) Additional Components</a></li><li><a href="maven-jars.html">27) Mavenized</a></li><li><a href="security-howto.html">28) Security Considerations</a></li><li><a href="windows-service-howto.html">29) Windows Service</a></li><li><a href="windows-auth-howto.html">30) Windows Authentication</a></li><li><a href="jdbc-pool.html">31) Tomcat's JDBC Pool</a></li><li><a href="web-socket-howto.html">32) WebSocket</a></li></ul><p><strong>Reference</strong></p><ul><li><a href="RELEASE-NOTES.txt">Release Notes</a></li><li><a href="config/index.html">Configuration</a></li><li><a href="api/index.html">Tomcat Javadocs</a></li><li><a href="servletapi/index.html">Servlet Javadocs</a></li><li><a href="jspapi/index.html">JSP 2.2 Javadocs</a></li><li><a href="elapi/index.html">EL 2.2 Javadocs</a></li><li><a href="http://tomcat.apache.org/connectors-doc/">JK 1.2 Documentation</a></li></ul><p><strong>Apache Tomcat Development</strong></p><ul><li><a href="building.html">Building</a></li><li><a href="changelog.html">Changelog</a></li><li><a href="http://wiki.apache.org/tomcat/TomcatVersions">Status</a></li><li><a href="developers.html">Developers</a></li><li><a href="architecture/index.html">Architecture</a></li><li><a href="funcspecs/index.html">Functional Specs.</a></li><li><a href="tribes/introduction.html">Tribes</a></li></ul></td><!--RIGHT SIDE MAIN BODY--><td width="80%" valign="top" align="left" id="mainBody"><h1>Tomcat Setup</h1><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Table of Contents"><!--()--></a><a name="Table_of_Contents"><strong>Table of Contents</strong></a></font></td></tr><tr><td><blockquote>
22<ul><li><a href="#Introduction">Introduction</a></li><li><a href="#Windows">Windows</a></li><li><a href="#Unix_daemon">Unix daemon</a></li></ul>
23</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Introduction"><strong>Introduction</strong></a></font></td></tr><tr><td><blockquote>
24 <p>
25 There are several ways to set up Tomcat for running on different
26 platforms. The main documentation for this is a file called
27 <a href="RUNNING.txt">RUNNING.txt</a>. We encourage you to refer to that
28 file if the information below does not answer some of your questions.
29 </p>
30 </blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Windows"><strong>Windows</strong></a></font></td></tr><tr><td><blockquote>
31
32 <p>
33 Installing Tomcat on Windows can be done easily using the Windows
34 installer. Its interface and functionality is similar to other wizard
35 based installers, with only a few items of interest.
36 </p>
37
38 <p>
39 <ul>
40 <li><strong>Installation as a service</strong>: Tomcat will be
41 installed as a Windows service no matter what setting is selected.
42 Using the checkbox on the component page sets the service as "auto"
43 startup, so that Tomcat is automatically started when Windows
44 starts. For optimal security, the service should be run as a
45 separate user, with reduced permissions (see the Windows Services
46 administration tool and its documentation).</li>
47 <li><strong>Java location</strong>: The installer will provide a default
48 JRE to use to run the service. The installer uses the registry to
49 determine the base path of a Java 6 or later JRE, including the JRE
50 installed as part of the full JDK. When running on a 64-bit
51 operating system, the installer will first look for a 64-bit JRE and
52 only look for a 32-bit JRE if a 64-bit JRE is not found. It is not
53 mandatory to use the default JRE detected by the installer. Any
54 installed Java 6 or later JRE (32-bit or 64-bit) may be used.</li>
55 <li><strong>Tray icon</strong>: When Tomcat is run as a service, there
56 will not be any tray icon present when Tomcat is running. Note that
57 when choosing to run Tomcat at the end of installation, the tray
58 icon will be used even if Tomcat was installed as a service.</li>
59 <li>Refer to the
60 <a href="windows-service-howto.html">Windows Service HOW-TO</a>
61 for information on how to manage Tomcat as a Windows service.
62 </li>
63 </ul>
64 </p>
65
66 <p>The installer will create shortcuts allowing starting and configuring
67 Tomcat. It is important to note that the Tomcat administration web
68 application can only be used when Tomcat is running.</p>
69
70 </blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Unix daemon"><!--()--></a><a name="Unix_daemon"><strong>Unix daemon</strong></a></font></td></tr><tr><td><blockquote>
71
72 <p>Tomcat can be run as a daemon using the jsvc tool from the
73 commons-daemon project. Source tarballs for jsvc are included with the
74 Tomcat binaries, and need to be compiled. Building jsvc requires
75 a C ANSI compiler (such as GCC), GNU Autoconf, and a JDK.</p>
76
77 <p>Before running the script, the <code>JAVA_HOME</code> environment
78 variable should be set to the base path of the JDK. Alternately, when
79 calling the <code>./configure</code> script, the path of the JDK may
80 be specified using the <code>--with-java</code> parameter, such as
81 <code>./configure --with-java=/usr/java</code>.</p>
82
83 <p>Using the following commands should result in a compiled jsvc binary,
84 located in the <code>$CATALINA_HOME/bin</code> folder. This assumes
85 that GNU TAR is used, and that <code>CATALINA_HOME</code> is an
86 environment variable pointing to the base path of the Tomcat
87 installation.</p>
88
89 <p>Please note that you should use the GNU make (gmake) instead of
90 the native BSD make on FreeBSD systems.</p>
91
92<div align="left"><table cellspacing="4" cellpadding="0" border="0"><tr><td bgcolor="#023264" width="1" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#023264" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#023264" width="1" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td></tr><tr><td bgcolor="#023264" width="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#ffffff" height="1"><pre>
93 cd $CATALINA_HOME/bin
94 tar xvfz commons-daemon-native.tar.gz
95 cd commons-daemon-1.0.x-native-src/unix
96 ./configure
97 make
98 cp jsvc ../..
99 cd ../..
100</pre></td><td bgcolor="#023264" width="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td></tr><tr><td bgcolor="#023264" width="1" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#023264" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#023264" width="1" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td></tr></table></div>
101
102 <p>Tomcat can then be run as a daemon using the following commands.</p>
103
104<div align="left"><table cellspacing="4" cellpadding="0" border="0"><tr><td bgcolor="#023264" width="1" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#023264" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#023264" width="1" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td></tr><tr><td bgcolor="#023264" width="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#ffffff" height="1"><pre>
105 CATALINA_BASE=$CATALINA_HOME
106 cd $CATALINA_HOME
107 ./bin/jsvc \
108 -classpath $CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/tomcat-juli.jar \
109 -outfile $CATALINA_BASE/logs/catalina.out \
110 -errfile $CATALINA_BASE/logs/catalina.err \
111 -Dcatalina.home=$CATALINA_HOME \
112 -Dcatalina.base=$CATALINA_BASE \
113 -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager \
114 -Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties \
115 org.apache.catalina.startup.Bootstrap
116</pre></td><td bgcolor="#023264" width="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td></tr><tr><td bgcolor="#023264" width="1" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#023264" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td><td bgcolor="#023264" width="1" height="1"><img src="./images/void.gif" alt="" width="1" height="1" vspace="0" hspace="0" border="0"></td></tr></table></div>
117
118 <p>You may also need to specify <code>-jvm server</code> if the JVM defaults
119 to using a server VM rather than a client VM. This has been observed on
120 OSX.</p>
121
122 <p>jsvc has other useful parameters, such as <code>-user</code> which
123 causes it to switch to another user after the daemon initialization is
124 complete. This allows, for example, running Tomcat as a non privileged
125 user while still being able to use privileged ports. Note that if you
126 use this option and start Tomcat as root, you'll need to disable the
127 <code>org.apache.catalina.security.SecurityListener</code> check that
128 prevents Tomcat starting when running as root.</p>
129
130 <p><code>jsvc --help</code> will return the full jsvc usage
131 information. In particular, the <code>-debug</code> option is useful
132 to debug issues running jsvc.</p>
133
134 <p>The file <code>$CATALINA_HOME/bin/daemon.sh</code> can be used as a
135 template for starting Tomcat automatically at boot time from
136 <code>/etc/init.d</code> with jsvc.</p>
137
138 <p>Note that the Commons-Daemon JAR file must be on your runtime classpath
139 to run Tomcat in this manner. The Commons-Daemon JAR file is in the
140 Class-Path entry of the bootstrap.jar manifest, but if you get a
141 ClassNotFoundException or a NoClassDefFoundError for a Commons-Daemon
142 class, add the Commons-Daemon JAR to the -cp argument when launching
143 jsvc.</p>
144
145 </blockquote></td></tr></table></td></tr><tr class="noPrint"><td width="20%" valign="top" nowrap class="noPrint"></td><td width="80%" valign="top" align="left"><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="comments_section" id="comments_section"><strong>Comments</strong></a></font></td></tr><tr><td><blockquote><p class="notice"><strong>Notice: </strong>This comments section collects your suggestions
146 on improving documentation for Apache Tomcat.<br><br>
147 If you have trouble and need help, read
148 <a href="http://tomcat.apache.org/findhelp.html">Find Help</a> page
149 and ask your question on the tomcat-users
150 <a href="http://tomcat.apache.org/lists.html">mailing list</a>.
151 Do not ask such questions here. This is not a Q&amp;A section.<br><br>
152 The Apache Comments System is explained <a href="/tomcat-7.0-doc/comments.html">here</a>.
153 Comments may be removed by our moderators if they are either
154 implemented or considered invalid/off-topic.</p><script type="text/javascript"><!--//--><![CDATA[//><!--
155 var comments_shortname = 'tomcat';
156 var comments_identifier = 'http://tomcat.apache.org/tomcat-7.0-doc/setup.html';
157 (function(w, d) {
158 if (w.location.hostname.toLowerCase() == "tomcat.apache.org") {
159 d.write('<div id="comments_thread"><\/div>');
160 var s = d.createElement('script');
161 s.type = 'text/javascript';
162 s.async = true;
163 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
164 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
165 }
166 else {
167 d.write('<div id="comments_thread"><strong>Comments are disabled for this page at the moment.<\/strong><\/div>');
168 }
169 })(window, document);
170 //--><!]]></script></blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td colspan="2"><hr noshade size="1"></td></tr><!--PAGE FOOTER--><tr><td colspan="2"><div align="center"><font color="#525D76" size="-1"><em>
171 Copyright &copy; 1999-2013, Apache Software Foundation
172 </em></font></div></td></tr></table></body></html>