<html><head><META http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Apache Tomcat 6.0 (6.0.39) - SSI How To</title><meta name="author" content="Glenn L. Nielsen"><style type="text/css" media="print">
			.noPrint {display: none;}
			td#mainBody {width: 100%;}
		</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="
      The Apache Tomcat Servlet/JSP Container
    " border="0"></a></td><td><h1><font face="arial,helvetica,sanserif">Apache Tomcat 6.0</font></h1><font face="arial,helvetica,sanserif">Version 6.0.39, Jan 27 2014</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="noshade" size="1"></td></tr><tr><!--LEFT SIDE NAVIGATION--><td width="20%" valign="top" nowrap="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></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></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">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></ul></td><!--RIGHT SIDE MAIN BODY--><td width="80%" valign="top" align="left" id="mainBody"><h1>Apache Tomcat 6.0</h1><h2>SSI How To</h2><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>
<ul><li><a href="#Introduction">Introduction</a></li><li><a href="#Installation">Installation</a></li><li><a href="#Servlet_Configuration">Servlet Configuration</a></li><li><a href="#Filter_Configuration">Filter Configuration</a></li><li><a href="#Directives">Directives</a></li><li><a href="#Variables">Variables</a></li></ul>
</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>

<p>SSI (Server Side Includes) are directives that are placed in HTML pages,
and evaluated on the server while the pages are being served. They let you
add dynamically generated content to an existing HTML page, without having
to serve the entire page via a CGI program, or other dynamic technology.
</p>

<p>Within Tomcat SSI support can be added when using Tomcat as your
HTTP server and you require SSI support.  Typically this is done
during development when you don't want to run a web server like Apache.</p>

<p>Tomcat SSI support implements the same SSI directives as Apache.  See the
<a href="http://httpd.apache.org/docs/howto/ssi.html#basicssidirectives">
Apache Introduction to SSI</a> for information on using SSI directives.</p>

<p>SSI support is available as a servlet and as a filter. You should use one
or the other to provide SSI support but not both.</p>

<p>Servlet based SSI support is implemented using the class
<code>org.apache.catalina.ssi.SSIServlet</code>.  Traditionally, this servlet
is mapped to the URL pattern "*.shtml".</p>

<p>Filter based SSI support is implemented using the class
<code>org.apache.catalina.ssi.SSIFilter</code>.  Traditionally, this filter
is mapped to the URL pattern "*.shtml", though it can be mapped to "*" as
it will selectively enable/disable SSI processing based on mime types.  The
contentType init param allows you to apply SSI processing to JSP pages,
javascript, or any other content you wish.</p>
<p>By default SSI support is disabled in Tomcat.</p>
</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Installation"><strong>Installation</strong></a></font></td></tr><tr><td><blockquote>

<p><strong>CAUTION</strong> - SSI directives can be used to execute programs
external to the Tomcat JVM. If you are using the Java SecurityManager this
will bypass your security policy configuration in <code>catalina.policy.</code>
</p>

<p>To use the SSI servlet, remove the XML comments from around the SSI servlet
and servlet-mapping configuration in
<code>$CATALINA_BASE/conf/web.xml</code>.</p>

<p>To use the SSI filter, remove the XML comments from around the SSI filter
and filter-mapping configuration in
<code>$CATALINA_BASE/conf/web.xml</code>.</p>

<p>Only Contexts which are marked as privileged may use SSI features (see the
privileged property of the Context element).</p>

</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Servlet Configuration"><!--()--></a><a name="Servlet_Configuration"><strong>Servlet Configuration</strong></a></font></td></tr><tr><td><blockquote>

<p>There are several servlet init parameters which can be used to
configure the behaviour of the SSI servlet.
<ul>
<li><strong>buffered</strong> - Should output from this servlet be buffered?
(0=false, 1=true) Default 0 (false).</li>
<li><strong>debug</strong> - Debugging detail level for messages logged
by this servlet. Default 0.</li>
<li><strong>expires</strong> - The number of seconds before a page with SSI
directives will expire. Default behaviour is for all SSI directives to be
evaluated for every request.</li>
<li><strong>isVirtualWebappRelative</strong> - Should "virtual" SSI directive
paths be interpreted as relative to the context root, instead of the server
root? Default false.</li>
<li><strong>inputEncoding</strong> - The encoding to be assumed for SSI
resources if one cannot be determined from the resource itself. Default is
the default platform encoding.</li>
<li><strong>outputEncoding</strong> - The encoding to be used for the result
of the SSI processing. Default is UTF-8.</li>
<li><strong>allowExec</strong> - Is the exec command enabled? Default is
false.</li>
</ul>
</p>

</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Filter Configuration"><!--()--></a><a name="Filter_Configuration"><strong>Filter Configuration</strong></a></font></td></tr><tr><td><blockquote>

<p>There are several filter init parameters which can be used to
configure the behaviour of the SSI filter.
<ul>
<li><strong>contentType</strong> - A regex pattern that must be matched before
SSI processing is applied. When crafting your own pattern, don't forget that a
mime content type may be followed by an optional character set in the form
"mime/type; charset=set" that you must take into account.  Default is
"text/x-server-parsed-html(;.*)?".</li>
<li><strong>debug</strong> - Debugging detail level for messages logged
by this servlet. Default 0.</li>
<li><strong>expires</strong> - The number of seconds before a page with SSI
directives will expire. Default behaviour is for all SSI directives to be
evaluated for every request.</li>
<li><strong>isVirtualWebappRelative</strong> - Should "virtual" SSI directive
paths be interpreted as relative to the context root, instead of the server
root? Default false.</li>
<li><strong>allowExec</strong> - Is the exec command enabled? Default is
false.</li>
</ul>
</p>

</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Directives"><strong>Directives</strong></a></font></td></tr><tr><td><blockquote>
<p>Server Side Includes are invoked by embedding SSI directives in an HTML document
 whose type will be processed by the SSI servlet. The directives take the form of an HTML
 comment. The directive is replaced by the results of interpreting it before sending the
 page to the client. The general form of a directive is: </p>
<p> <code>&lt;!--#directive [parm=value] --&gt;</code></p>
<p>The directives are:
<ul>
<li>
<strong>config</strong> - <code>&lt;!--#config timefmt="%B %Y" --&gt;</code>
Used to set the format of dates and other items processed by SSI
</li>
<li>
<strong>echo</strong> -   <code>&lt;!--#echo var="VARIABLE_NAME" --&gt;</code>
will be replaced by the value of the variable.
</li>
<li>
<strong>exec</strong> -  Used to run commands on the host system.
</li>
<li>
<strong>include</strong> -  <code>&lt;!--#include virtual="file-name" --&gt;</code>
inserts the contents
</li>
<li>
<strong>flastmod</strong> - <code>&lt;!--#flastmod file="filename.shtml" --&gt;</code>
Returns the time that a file was lost modified.
</li>
<li>
<strong>fsize</strong> - <code>&lt;!--#fsize file="filename.shtml" --&gt;</code>
Returns the size of a file.
</li>
<li>
<strong>printenv</strong> - <code>&lt;!--#printenv --&gt;</code>
Returns the list of all the defined variables.
</li>
<li>
<strong>set</strong> - <code>&lt;!--#set var="foo" value="Bar" --&gt;</code>
is used to assign a value to a user-defind variable.
</li>
<li>
<strong>if elif endif else</strong> - Used to create conditional sections. For example:</li>
<code>&lt;!--#config timefmt="%A" --&gt;<br>
  &lt;!--#if expr="$DATE_LOCAL = /Monday/" --&gt;<br>
  &lt;p&gt;Meeting at 10:00 on Mondays&lt;/p&gt;<br>
  &lt;!--#elif expr="$DATE_LOCAL = /Friday/" --&gt;<br>
  &lt;p&gt;Turn in your time card&lt;/p&gt;<br>
  &lt;!--#else --&gt;<br>
  &lt;p&gt;Yoga class at noon.&lt;/p&gt;<br>
  &lt;!--#endif --&gt;</code>
 </ul>
</p>
See the
<p> <a href="http://httpd.apache.org/docs/howto/ssi.html#basicssidirectives">
Apache Introduction to SSI</a> for more information on using SSI directives.</p>
</blockquote></td></tr></table><table border="0" cellspacing="0" cellpadding="2"><tr><td bgcolor="#525D76"><font color="#ffffff" face="arial,helvetica.sanserif"><a name="Variables"><strong>Variables</strong></a></font></td></tr><tr><td><blockquote>
<p>The SSI servlet currently implements the following variables:
</p>
<table border="1">
<tr>
<th>Variable Name</th>
<th>Description</th>
</tr>

<tr>
<td>AUTH_TYPE</td>
<td>
  The type of authentication used for this user: BASIC, FORM, etc.</td>
</tr>

<tr>
<td>CONTENT_LENGTH</td>
<td>
  The length of the data (in bytes or the number of 
  characters) passed from a form.</td>
</tr>

<tr>
<td>CONTENT_TYPE</td>
<td>
  The MIME type of the query data, such as "text/html".</td>
</tr>

<tr>
<td>DATE_GMT</td>
<td>
Current date and time in GMT</td>
</tr>

<tr>
<td>DATE_LOCAL</td>
<td>
Current date and time in the local time zone</td>
</tr>
<tr>
<td>DOCUMENT_NAME</td>
<td>
The current file</td>
</tr>
<tr>
<td>DOCUMENT_URI</td>
<td>
Virtual path to the file</td>
</tr>

<tr>
<td>GATEWAY_INTERFACE</td>
<td>
  The revision of the Common Gateway Interface that the 
  server uses if enabled: "CGI/1.1".</td>
</tr>

<tr>
<td>HTTP_ACCEPT</td>
<td>
  A list of the MIME types that the client can accept.</td>
</tr>

<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td>
  A list of the compression types that the client can accept.</td>
</tr>

<tr>
<td>HTTP_ACCEPT_LANGUAGE</td>
<td>
  A list of the languages that the client can accept.</td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td>
  The way that the connection from the client is being managed:
  "Close" or "Keep-Alive".</td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td>
  The web site that the client requested.</td>
</tr>
<tr>
<td>HTTP_REFERER</td>
<td>
  The URL of the document that the client linked from.</td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td>
  The browser the client is using to issue the request.</td>
</tr>
<tr>
<td>LAST_MODIFIED</td>
<td>
Last modification date and time for current file</td>
</tr>
<tr>
<td>PATH_INFO</td>
<td>
  Extra path information passed to a servlet.</td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td>
  The translated version of the path given by the
  variable PATH_INFO.</td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td>
The query string that follows the "?" in the URL.
</td>
</tr>
<tr>
<td>QUERY_STRING_UNESCAPED</td>
<td>
Undecoded query string with all shell metacharacters escaped 
with "\"</td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td>
  The remote IP address of the user making the request.</td>
</tr>
<tr>
<td>REMOTE_HOST</td>
<td>
  The remote hostname of the user making the request.</td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td>
  The port number at remote IP address of the user making the request.</td>
</tr>
<tr>
<td>REMOTE_USER</td>
<td>
  The authenticated name of the user.</td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td>
  The method with which the information request was
  issued: "GET", "POST" etc.</td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td>
  The web page originally requested by the client.</td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td>
  The location of the current web page on the server.</td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td>
  The name of the web page.</td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td>
  The server's IP address.</td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td>
  The server's hostname or IP address.</td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td>
  The port on which the server received the request.</td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td>
  The protocol used by the server. E.g. "HTTP/1.1".</td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td>
  The name and version of the server software that is 
  answering the client request.</td>
</tr>
<tr>
<td>UNIQUE_ID</td>
<td>
  A token used to identify the current session if one
  has been established.</td>
</tr>
</table>
</blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td colspan="2"><hr noshade="noshade" size="1"></td></tr><!--PAGE FOOTER--><tr><td colspan="2"><div align="center"><font color="#525D76" size="-1"><em>
        Copyright &copy; 1999-2014, Apache Software Foundation
        </em></font></div></td></tr></table></body></html>