mod_info.html.en revision 7fec19672a491661b2fe4b29f685bc7f4efa64d4
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_info - Apache HTTP Server</title>
<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" />
<script src="/style/scripts/prettify.js" type="text/javascript">
</script>
<link href="/images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">Glossary</a> | <a href="/sitemap.html">Sitemap</a></p>
<p class="apache">Apache HTTP Server Version 2.5</p>
<img alt="" src="/images/feather.gif" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Apache Module mod_info</h1>
<div class="toplang">
<p><span>Available Languages: </span><a href="/en/mod/mod_info.html" title="English">&nbsp;en&nbsp;</a> |
<a href="/fr/mod/mod_info.html" hreflang="fr" rel="alternate" title="Fran�ais">&nbsp;fr&nbsp;</a> |
<a href="/ja/mod/mod_info.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="/ko/mod/mod_info.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Provides a comprehensive overview of the server
configuration</td></tr>
<tr><th><a href="module-dict.html#Status">Status:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Module�Identifier:</a></th><td>info_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Source�File:</a></th><td>mod_info.c</td></tr></table>
<h3>Summary</h3>
<p>To configure <code class="module"><a href="/mod/mod_info.html">mod_info</a></code>, add the following to your
<code>httpd.conf</code> file.</p>
<pre class="prettyprint lang-config">
&lt;Location /server-info&gt;
SetHandler server-info
&lt;/Location&gt;
</pre>
<p>You may wish to use <code class="module"><a href="/mod/mod_access.html">mod_access</a></code> inside the
<code class="directive"><a href="/mod/core.html#location">&lt;Location&gt;</a></code>
directive to limit access to your server configuration
information:</p>
<pre class="prettyprint lang-config">
&lt;Location /server-info&gt;
SetHandler server-info
Require host example.com
&lt;/Location&gt;
</pre>
<p>Once configured, the server information is obtained by
accessing <code>http://your.host.example.com/server-info</code></p>
</div>
<div id="quickview"><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="/images/down.gif" /> <a href="#addmoduleinfo">AddModuleInfo</a></li>
</ul>
<h3>Topics</h3>
<ul id="topics">
<li><img alt="" src="/images/down.gif" /> <a href="#security">Security Issues</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#queries">Selecting the information shown</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#startup">Dumping the configuration on startup</a></li>
<li><img alt="" src="/images/down.gif" /> <a href="#limitations">Known Limitations</a></li>
</ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="security" id="security">Security Issues</a></h2>
<p>Once <code class="module"><a href="/mod/mod_info.html">mod_info</a></code> is loaded into the server, its
handler capability is available in <em>all</em> configuration
files, including per-directory files (<em>e.g.</em>,
<code>.htaccess</code>). This may have security-related
ramifications for your site.</p>
<p>In particular, this module can leak sensitive information
from the configuration directives of other Apache modules such as
system paths, usernames/passwords, database names, etc. Therefore,
this module should <strong>only</strong> be
used in a controlled environment and always with caution.</p>
<p>You will probably want to use <code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code>
to limit access to your server configuration information.</p>
<div class="example"><h3>Access control</h3><pre class="prettyprint lang-config">
&lt;Location /server-info&gt;
SetHandler server-info
Order allow,deny
# Allow access from server itself
Allow from 127.0.0.1
# Additionally, allow access from local workstation
Allow from 192.168.1.17
&lt;/Location&gt;
</pre>
</div>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="queries" id="queries">Selecting the information shown</a></h2>
<p>By default, the server information includes a list of
all enabled modules, and for each module, a description of
the directives understood by that module, the hooks implemented
by that module, and the relevant directives from the current
configuration.</p>
<p>Other views of the configuration information are available by
appending a query to the <code>server-info</code> request. For
example, <code>http://your.host.example.com/server-info?config</code>
will show all configuration directives.</p>
<dl>
<dt><code>?&lt;module-name&gt;</code></dt>
<dd>Only information relevant to the named module</dd>
<dt><code>?config</code></dt>
<dd>Just the configuration directives, not sorted by module</dd>
<dt><code>?hooks</code></dt>
<dd>Only the list of Hooks each module is attached to</dd>
<dt><code>?list</code></dt>
<dd>Only a simple list of enabled modules</dd>
<dt><code>?server</code></dt>
<dd>Only the basic server information</dd>
</dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="startup" id="startup">Dumping the configuration on startup</a></h2>
<p>If the config define <code>-DDUMP_CONFIG</code> is set,
<code class="module"><a href="/mod/mod_info.html">mod_info</a></code> will dump the pre-parsed configuration to
<code>stdout</code> during server startup. This is roughly equivalent
to the <code>?config</code> query.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="section">
<h2><a name="limitations" id="limitations">Known Limitations</a></h2>
<p><code class="module"><a href="/mod/mod_info.html">mod_info</a></code> provides its information by reading the
parsed configuration, rather than reading the original configuration
file. There are a few limitations as a result of the way the parsed
configuration tree is created:</p>
<ul>
<li>Directives which are executed immediately rather than being
stored in the parsed configuration are not listed. These include
<code class="directive"><a href="/mod/core.html#serverroot">ServerRoot</a></code>,
<code class="directive"><a href="/mod/mod_so.html#loadmodule">LoadModule</a></code>, and
<code class="directive"><a href="/mod/mod_so.html#loadfile">LoadFile</a></code>.</li>
<li>Directives which control the configuration file itself, such as
<code class="directive"><a href="/mod/core.html#include">Include</a></code>,
<code class="directive"><a href="/mod/core.html#&lt;ifmodule&gt;">&lt;IfModule&gt;</a></code> and
<code class="directive"><a href="/mod/core.html#&lt;ifdefine&gt;">&lt;IfDefine&gt;</a></code> are not
listed, but the included configuration directives are.</li>
<li>Comments are not listed. (This may be considered a feature.)</li>
<li>Configuration directives from <code>.htaccess</code> files are
not listed (since they do not form part of the permanent server
configuration).</li>
<li>Container directives such as
<code class="directive"><a href="/mod/core.html#&lt;directory&gt;">&lt;Directory&gt;</a></code>
are listed normally, but <code class="module"><a href="/mod/mod_info.html">mod_info</a></code> cannot figure
out the line number for the closing
<code class="directive"><a href="/mod/core.html#&lt;/directory&gt;">&lt;/Directory&gt;</a></code>.</li>
<li>Directives generated by third party modules such as <a href="http://perl.apache.org">mod_perl</a>
might not be listed.</li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="AddModuleInfo" id="AddModuleInfo">AddModuleInfo</a> <a name="addmoduleinfo" id="addmoduleinfo">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Adds additional information to the module
information displayed by the server-info handler</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddModuleInfo <var>module-name</var> <var>string</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_info</td></tr>
</table>
<p>This allows the content of <var>string</var> to be shown as
HTML interpreted, <strong>Additional Information</strong> for
the module <var>module-name</var>. Example:</p>
<pre class="prettyprint lang-config">
AddModuleInfo mod_deflate.c 'See &lt;a \
href="http://www.apache.org/docs/trunk/mod/mod_deflate.html"&gt;\
http://www.apache.org/docs/trunk/mod/mod_deflate.html&lt;/a&gt;'
</pre>
</div>
</div>
<div class="bottomlang">
<p><span>Available Languages: </span><a href="/en/mod/mod_info.html" title="English">&nbsp;en&nbsp;</a> |
<a href="/fr/mod/mod_info.html" hreflang="fr" rel="alternate" title="Fran�ais">&nbsp;fr&nbsp;</a> |
<a href="/ja/mod/mod_info.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="/ko/mod/mod_info.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
</div><div id="footer">
<p class="apache">Copyright 2012 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">Glossary</a> | <a href="/sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== undefined) {
prettyPrint();
}
//--><!]]></script>
</body></html>