mirror of
https://github.com/apache/httpd.git
synced 2025-08-13 00:22:48 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91116 13f79535-47bb-0310-9956-ffa450edef68
364 lines
13 KiB
HTML
364 lines
13 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta name="generator" content="HTML Tidy, see www.w3.org" />
|
|
|
|
<title>Apache module mod_imap</title>
|
|
</head>
|
|
<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
|
|
|
|
<body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
|
|
vlink="#000080" alink="#FF0000">
|
|
<!--#include virtual="header.html" -->
|
|
|
|
<h1 align="CENTER">Module mod_imap</h1>
|
|
|
|
<p>This module provides for server-side imagemap
|
|
processing.</p>
|
|
|
|
<p><a href="module-dict.html#Status"
|
|
rel="Help"><strong>Status:</strong></a> Base<br />
|
|
<a href="module-dict.html#SourceFile"
|
|
rel="Help"><strong>Source File:</strong></a> mod_imap.c<br />
|
|
<a href="module-dict.html#ModuleIdentifier"
|
|
rel="Help"><strong>Module Identifier:</strong></a>
|
|
imap_module<br />
|
|
<a href="module-dict.html#compatibility"
|
|
rel="Help"><strong>Compatibility:</strong></a> Available in
|
|
Apache 1.1 and later.</p>
|
|
|
|
<h2>Summary</h2>
|
|
|
|
<p>This module processes <code>.map</code> files, thereby
|
|
replacing the functionality of the <code>imagemap</code> CGI
|
|
program. Any directory or document type configured to use the
|
|
handler <code>imap-file</code> (using either <code><a
|
|
href="mod_mime.html#addhandler">AddHandler</a></code> or
|
|
<code><a href="mod_mime.html#sethandler">SetHandler</a></code>)
|
|
will be processed by this module.</p>
|
|
|
|
<p>The following directive will activate files ending with
|
|
<code>.map</code> as imagemap files:</p>
|
|
|
|
<blockquote>
|
|
<code>AddHandler imap-file map</code>
|
|
</blockquote>
|
|
Note that the following is still supported:
|
|
|
|
<blockquote>
|
|
<code>AddType application/x-httpd-imap map</code>
|
|
</blockquote>
|
|
However, we are trying to phase out "magic MIME types" so we
|
|
are deprecating this method.
|
|
|
|
<h2>Directives</h2>
|
|
|
|
<ul>
|
|
<li><a href="#imapmenu">ImapMenu</a></li>
|
|
|
|
<li><a href="#imapdefault">ImapDefault</a></li>
|
|
|
|
<li><a href="#imapbase">ImapBase</a></li>
|
|
</ul>
|
|
|
|
<h2>New Features</h2>
|
|
The imagemap module adds some new features that were not
|
|
possible with previously distributed imagemap programs.
|
|
|
|
<ul>
|
|
<li>URL references relative to the Referer: information.</li>
|
|
|
|
<li>Default <BASE> assignment through a new map
|
|
directive <code>base</code>.</li>
|
|
|
|
<li>No need for <code>imagemap.conf</code> file.</li>
|
|
|
|
<li>Point references.</li>
|
|
|
|
<li>Configurable generation of imagemap menus.</li>
|
|
</ul>
|
|
|
|
<h2>Imagemap File</h2>
|
|
The lines in the imagemap files can have one of several
|
|
formats:
|
|
|
|
<blockquote>
|
|
<code>directive value [x,y ...]</code><br />
|
|
<code>directive value "Menu text" [x,y ...]</code><br />
|
|
<code>directive value x,y ... "Menu text"</code><br />
|
|
</blockquote>
|
|
The directive is one of <code>base</code>,
|
|
<code>default</code>, <code>poly</code>, <code>circle</code>,
|
|
<code>rect</code>, or <code>point</code>. The value is an
|
|
absolute or relative URL, or one of the special values listed
|
|
below. The coordinates are <code>x,y</code> pairs separated by
|
|
whitespace. The quoted text is used as the text of the link if
|
|
a imagemap menu is generated. Lines beginning with '#' are
|
|
comments.
|
|
|
|
<h3>Imagemap File Directives</h3>
|
|
There are six directives allowed in the imagemap file. The
|
|
directives can come in any order, but are processed in the
|
|
order they are found in the imagemap file.
|
|
|
|
<dl>
|
|
<dt><code>base</code> Directive</dt>
|
|
|
|
<dd>Has the effect of <code><BASE HREF="value"></code>.
|
|
The non-absolute URLs of the map-file are taken relative to
|
|
this value. The <code>base</code> directive overrides
|
|
ImapBase as set in a .htaccess file or in the server
|
|
configuration files. In the absence of an ImapBase
|
|
configuration directive, <code>base</code> defaults to
|
|
<code>http://server_name/</code>.<br />
|
|
<code>base_uri</code> is synonymous with <code>base</code>.
|
|
Note that a trailing slash on the URL is significant.</dd>
|
|
|
|
<dt><code>default</code> Directive</dt>
|
|
|
|
<dd>The action taken if the coordinates given do not fit any
|
|
of the <code>poly</code>, <code>circle</code> or
|
|
<code>rect</code> directives, and there are no
|
|
<code>point</code> directives. Defaults to
|
|
<code>nocontent</code> in the absence of an ImapDefault
|
|
configuration setting, causing a status code of <code>204 No
|
|
Content</code> to be returned. The client should keep the
|
|
same page displayed.</dd>
|
|
|
|
<dt><code>poly</code> Directive</dt>
|
|
|
|
<dd>Takes three to one-hundred points, and is obeyed if the
|
|
user selected coordinates fall within the polygon defined by
|
|
these points.</dd>
|
|
|
|
<dt><code>circle</code></dt>
|
|
|
|
<dd>Takes the center coordinates of a circle and a point on
|
|
the circle. Is obeyed if the user selected point is with the
|
|
circle.</dd>
|
|
|
|
<dt><code>rect</code> Directive</dt>
|
|
|
|
<dd>Takes the coordinates of two opposing corners of a
|
|
rectangle. Obeyed if the point selected is within this
|
|
rectangle.</dd>
|
|
|
|
<dt><code>point</code> Directive</dt>
|
|
|
|
<dd>Takes a single point. The point directive closest to the
|
|
user selected point is obeyed if no other directives are
|
|
satisfied. Note that <code>default</code> will not be
|
|
followed if a <code>point</code> directive is present and
|
|
valid coordinates are given.</dd>
|
|
</dl>
|
|
|
|
<h3>Values</h3>
|
|
The values for each of the directives can any of the following:
|
|
|
|
|
|
<dl>
|
|
<dt>a URL</dt>
|
|
|
|
<dd>The URL can be relative or absolute URL. Relative URLs
|
|
can contain '..' syntax and will be resolved relative to the
|
|
<code>base</code> value.<br />
|
|
<code>base</code> itself will not resolved according to the
|
|
current value. A statement <code>base mailto:</code> will
|
|
work properly, though.</dd>
|
|
|
|
<dt><code>map</code></dt>
|
|
|
|
<dd>Equivalent to the URL of the imagemap file itself. No
|
|
coordinates are sent with this, so a menu will be generated
|
|
unless ImapMenu is set to 'none'.</dd>
|
|
|
|
<dt><code>menu</code></dt>
|
|
|
|
<dd>Synonymous with <code>map</code>.</dd>
|
|
|
|
<dt><code>referer</code></dt>
|
|
|
|
<dd>Equivalent to the URL of the referring document. Defaults
|
|
to <code>http://servername/</code> if no Referer: header was
|
|
present.</dd>
|
|
|
|
<dt><code>nocontent</code></dt>
|
|
|
|
<dd>Sends a status code of <code>204 No Content</code>,
|
|
telling the client to keep the same page displayed. Valid for
|
|
all but <code>base</code>.</dd>
|
|
|
|
<dt><code>error</code></dt>
|
|
|
|
<dd>Fails with a <code>500 Server Error</code>. Valid for all
|
|
but <code>base</code>, but sort of silly for anything but
|
|
<code>default</code>.</dd>
|
|
</dl>
|
|
|
|
<h3>Coordinates</h3>
|
|
|
|
<dl>
|
|
<dt><code>0,0 200,200</code></dt>
|
|
|
|
<dd>A coordinate consists of an <tt>x</tt> and a <tt>y</tt>
|
|
value separated by a comma. The coordinates are separated
|
|
from each other by whitespace. To accommodate the way Lynx
|
|
handles imagemaps, should a user select the coordinate
|
|
<code>0,0</code>, it is as if no coordinate had been
|
|
selected.</dd>
|
|
</dl>
|
|
|
|
<h3>Quoted Text</h3>
|
|
|
|
<dl>
|
|
<dt><code>"Menu Text"</code></dt>
|
|
|
|
<dd>After the value or after the coordinates, the line
|
|
optionally may contain text within double quotes. This string
|
|
is used as the text for the link if a menu is
|
|
generated:<br />
|
|
<code><a HREF="http://foo.com/">Menu
|
|
text</a></code><br />
|
|
If no quoted text is present, the name of the link will be
|
|
used as the text:<br />
|
|
<code><a
|
|
HREF="http://foo.com/">http://foo.com</a></code><br />
|
|
It is impossible to escape double quotes within this
|
|
text.</dd>
|
|
</dl>
|
|
|
|
<h2>Example Mapfile</h2>
|
|
|
|
<blockquote>
|
|
<code>#Comments are printed in a 'formatted' or
|
|
'semiformatted' menu.<br />
|
|
#And can contain html tags. <hr><br />
|
|
base referer<br />
|
|
poly map "Could I have a menu, please?" 0,0 0,10 10,10
|
|
10,0<br />
|
|
rect .. 0,0 77,27 "the directory of the referer"<br />
|
|
circle http://www.inetnebr.com/lincoln/feedback/ 195,0
|
|
305,27<br />
|
|
rect another_file "in same directory as referer" 306,0
|
|
419,27<br />
|
|
point http://www.zyzzyva.com/ 100,100<br />
|
|
point http://www.tripod.com/ 200,200<br />
|
|
rect mailto:nate@tripod.com 100,150 200,0 "Bugs?"<br />
|
|
</code>
|
|
</blockquote>
|
|
|
|
<h2>Referencing your mapfile</h2>
|
|
|
|
<blockquote>
|
|
<code><A HREF="/maps/imagemap1.map"><br />
|
|
<IMG ISMAP SRC="/images/imagemap1.gif"><br />
|
|
</A></code>
|
|
</blockquote>
|
|
<hr />
|
|
|
|
<h2><a id="imapmenu" name="imapmenu">ImapMenu</a>
|
|
directive</h2>
|
|
<a href="directive-dict.html#Syntax"
|
|
rel="Help"><strong>Syntax:</strong></a> ImapMenu
|
|
none|formatted|semiformatted|unformatted<br />
|
|
<a href="directive-dict.html#Context"
|
|
rel="Help"><strong>Context:</strong></a> server config, virtual
|
|
host, directory, .htaccess<br />
|
|
<a href="directive-dict.html#Override"
|
|
rel="Help"><strong>Override:</strong></a> Indexes<br />
|
|
<a href="directive-dict.html#Module"
|
|
rel="Help"><strong>Module:</strong></a> mod_imap<br />
|
|
<a href="directive-dict.html#Compatibility"
|
|
rel="Help"><strong>Compatibility:</strong></a> ImapMenu is only
|
|
available in Apache 1.1 and later.
|
|
|
|
<p>The ImapMenu directive determines the action taken if an
|
|
imagemap file is called without valid coordinates.</p>
|
|
|
|
<dl>
|
|
<dt><code>none</code></dt>
|
|
|
|
<dd>If ImapMenu is <code>none</code>, no menu is generated,
|
|
and the <code>default</code> action is performed.</dd>
|
|
|
|
<dt><code>formatted</code></dt>
|
|
|
|
<dd>A <code>formatted</code> menu is the simplest menu.
|
|
Comments in the imagemap file are ignored. A level one header
|
|
is printed, then an hrule, then the links each on a separate
|
|
line. The menu has a consistent, plain look close to that of
|
|
a directory listing.</dd>
|
|
|
|
<dt><code>semiformatted</code></dt>
|
|
|
|
<dd>In the <code>semiformatted</code> menu, comments are
|
|
printed where they occur in the imagemap file. Blank lines
|
|
are turned into HTML breaks. No header or hrule is printed,
|
|
but otherwise the menu is the same as a
|
|
<code>formatted</code> menu.</dd>
|
|
|
|
<dt><code>unformatted</code></dt>
|
|
|
|
<dd>Comments are printed, blank lines are ignored. Nothing is
|
|
printed that does not appear in the imagemap file. All breaks
|
|
and headers must be included as comments in the imagemap
|
|
file. This gives you the most flexibility over the appearance
|
|
of your menus, but requires you to treat your map files as
|
|
HTML instead of plaintext.</dd>
|
|
</dl>
|
|
<hr />
|
|
|
|
<h2><a id="imapdefault" name="imapdefault">ImapDefault</a>
|
|
directive</h2>
|
|
<a href="directive-dict.html#Syntax"
|
|
rel="Help"><strong>Syntax:</strong></a> ImapDefault
|
|
error|nocontent|map|referer|<em>URL</em><br />
|
|
<a href="directive-dict.html#Context"
|
|
rel="Help"><strong>Context:</strong></a> server config, virtual
|
|
host, directory, .htaccess<br />
|
|
<a href="directive-dict.html#Override"
|
|
rel="Help"><strong>Override:</strong></a> Indexes<br />
|
|
<a href="directive-dict.html#Module"
|
|
rel="Help"><strong>Module:</strong></a> mod_imap<br />
|
|
<a href="directive-dict.html#Compatibility"
|
|
rel="Help"><strong>Compatibility:</strong></a> ImapDefault is
|
|
only available in Apache 1.1 and later.
|
|
|
|
<p>The ImapDefault directive sets the default
|
|
<code>default</code> used in the imagemap files. Its value is
|
|
overridden by a <code>default</code> directive within the
|
|
imagemap file. If not present, the <code>default</code> action
|
|
is <code>nocontent</code>, which means that a <code>204 No
|
|
Content</code> is sent to the client. In this case, the client
|
|
should continue to display the original page.</p>
|
|
<hr />
|
|
|
|
<h2><a id="imapbase" name="imapbase">ImapBase</a>
|
|
directive</h2>
|
|
<a href="directive-dict.html#Syntax"
|
|
rel="Help"><strong>Syntax:</strong></a> ImapBase
|
|
map|referer|<em>URL</em><br />
|
|
<a href="directive-dict.html#Context"
|
|
rel="Help"><strong>Context:</strong></a> server config, virtual
|
|
host, directory, .htaccess<br />
|
|
<a href="directive-dict.html#Override"
|
|
rel="Help"><strong>Override:</strong></a> Indexes<br />
|
|
<a href="directive-dict.html#Module"
|
|
rel="Help"><strong>Module:</strong></a> mod_imap<br />
|
|
<a href="directive-dict.html#Compatibility"
|
|
rel="Help"><strong>Compatibility:</strong></a> ImapBase is only
|
|
available in Apache 1.1 and later.
|
|
|
|
<p>The ImapBase directive sets the default <code>base</code>
|
|
used in the imagemap files. Its value is overridden by a
|
|
<code>base</code> directive within the imagemap file. If not
|
|
present, the <code>base</code> defaults to
|
|
<code>http://servername/</code>.
|
|
<!--#include virtual="footer.html" -->
|
|
</p>
|
|
</body>
|
|
</html>
|
|
|