blob: d3a351f12ff050611fae5492d2df292b989f46bf [file] [log] [blame]
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="../style/manual.xsl"?>
<modulesynopsis>
<name>mod_status</name>
<status>Base</status>
<identifier>status_module</identifier>
<sourcefile>mod_status.c</sourcefile>
<compatibility>Available in Apache 1.1 and later</compatibility>
<description>This module provides information on server activity and
performance.</description>
<summary>
<note>
<strong>Warning:</strong> This document has not been updated
to take into account changes made in the 2.0 version of the
Apache HTTP Server. Some of the information may still be
relevant, but please use it with care.
</note>
<p>The Status module allows a server administrator to find out
how well their server is performing. A HTML page is presented
that gives the current server statistics in an easily readable
form. If required this page can be made to automatically
refresh (given a compatible browser). Another page gives a
simple machine-readable list of the current server state.</p>
<p>The details given are:</p>
<ul>
<li>The number of children serving requests</li>
<li>The number of idle children</li>
<li>The status of each child, the number of requests that
child has performed and the total number of bytes served by
the child (*)</li>
<li>A total number of accesses and byte count served (*)</li>
<li>The time the server was started/restarted and the time it
has been running for</li>
<li>Averages giving the number of requests per second, the
number of bytes served per second and the average number of
bytes per request (*)</li>
<li>The current percentage CPU used by each child and in
total by Apache (*)</li>
<li>The current hosts and requests being processed (*)</li>
</ul>
A compile-time option must be used to display the details
marked "(*)" as the instrumentation required for obtaining
these statistics does not exist within standard Apache.
</summary>
<section>
<title>Enabling Status Support</title>
To enable status reports only for browsers from the foo.com
domain add this code to your <code>httpd.conf</code>
configuration file
<example>
&lt;Location /server-status&gt;<br />
SetHandler server-status<br />
<br />
Order Deny,Allow<br />
Deny from all<br />
Allow from .foo.com<br />
&lt;/Location&gt;
</example>
<p>You can now access server statistics by using a Web browser
to access the page
<code>http://your.server.name/server-status</code></p>
<note><p>Note that <module>mod_status</module> will only work
when you are running Apache in <a
href="core.html#servertype">standalone</a> mode and not
<a href="core.html#servertype">inetd</a> mode.</p></note>
</section>
<section>
<title>Automatic Updates</title>
You can get the status page to update itself automatically if
you have a browser that supports "refresh". Access the page
<code>http://your.server.name/server-status?refresh=N</code> to
refresh the page every N seconds.
</section>
<section>
<title>Machine Readable Status File</title>
A machine-readable version of the status file is available by
accessing the page
<code>http://your.server.name/server-status?auto</code>. This
is useful when automatically run, see the Perl program in the
<code>/support</code> directory of Apache,
<code>log_server_status</code>.
<note>
<strong>It should be noted that if <module>mod_status</module> is
compiled into the server, its handler capability is available
in <em>all</em> configuration files, including
<em>per</em>-directory files (<em>e.g.</em>,
<code>.htaccess</code>). This may have security-related
ramifications for your site.</strong>
</note>
</section>
<directivesynopsis>
<name>ExtendedStatus</name>
<description>This directive controls whether the server keeps track of
extended status information for each request. This is only
useful if the status module is enabled on the server.</description>
<syntax>ExtendedStatus On|Off</syntax>
<default>ExtendedStatus Off</default>
<contextlist><context>server config</context></contextlist>
<compatibility>ExtendedStatus is only available in Apache 1.3.2 and
later.</compatibility>
<usage>
<p>This setting applies to the entire server, and cannot be
enabled or disabled on a virtualhost-by-virtualhost basis.</p>
</usage>
</directivesynopsis>
</modulesynopsis>