From: Joshua Slive Date: Fri, 8 Mar 2002 17:19:00 +0000 (+0000) Subject: Add some more xml versions. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1636690bc49bc974f48a7613d8e9dc5f03e447b4;p=apache Add some more xml versions. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93792 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/docs/manual/mod/mod_example.xml b/docs/manual/mod/mod_example.xml new file mode 100644 index 0000000000..97bd72f71a --- /dev/null +++ b/docs/manual/mod/mod_example.xml @@ -0,0 +1,120 @@ + + + + + +mod_example +Illustrates the Apache module API +Experimental +mod_example.c +example_module + + + + 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. + + +

The files in the src/modules/example directory + under the Apache distribution directory tree are provided as an + example to those that wish to write modules that use the Apache + API.

+ +

The main file is mod_example.c, which + illustrates all the different callback mechanisms and call + syntaxes. By no means does an add-on module need to include + routines for all of the callbacks - quite the contrary!

+ +

The example module is an actual working module. If you link + it into your server, enable the "example-handler" handler for a + location, and then browse to that location, you will see a + display of some of the tracing the example module did as the + various callbacks were made.

+
+ +
Compiling the example module + +

To include the example module in your server, follow the + steps below:

+ +
    +
  1. + Uncomment the "AddModule modules/example/mod_example" line + near the bottom of the src/Configuration file. + If there isn't one, add it; it should look like this: + + AddModule modules/example/mod_example.o + +
  2. + +
  3. Run the src/Configure script + ("cd src; ./Configure"). This will + build the Makefile for the server itself, and update the + src/modules/Makefile for any additional modules + you have requested from beneath that subdirectory.
  4. + +
  5. Make the server (run "make" in the + src directory).
  6. +
+ +

To add another module of your own:

+ +
    +
  1. mkdir src/modules/mymodule
  2. + +
  3. cp src/modules/example/* + src/modules/mymodule
  4. + +
  5. Modify the files in the new directory.
  6. + +
  7. Follow steps [1] through [3] above, with appropriate + changes.
  8. +
+
+ +
Using the <code>mod_example</code> Module + +

To activate the example module, include a block similar to + the following in your srm.conf file:

+ + <Location /example-info>
+ SetHandler example-handler
+ </Location> +
+ +

As an alternative, you can put the following into a .htaccess file + and then request the file "test.example" from that location:

+ + AddHandler example-handler .example + + +

After reloading/restarting your server, you should be able + to browse to this location and see the brief display mentioned + earlier.

+
+ + +Example +Demonstration directive to illustrate the Apache module +API +Example +server config +virtual hostdirectory +.htaccess + + +

The Example directive just sets a demonstration + flag which the example module's content handler displays. It + takes no arguments. If you browse to an URL to which the + example content-handler applies, you will get a display of the + routines within the module and how and in what order they were + called to service the document request. The effect of this + directive one can observe under the point "Example + directive declared here: YES/NO".

+
+
+ +
diff --git a/docs/manual/mod/mod_ext_filter.xml b/docs/manual/mod/mod_ext_filter.xml new file mode 100644 index 0000000000..20dd458af0 --- /dev/null +++ b/docs/manual/mod/mod_ext_filter.xml @@ -0,0 +1,232 @@ + + + + + +mod_ext_filter +Pass the response body + through an external program before delivery to the + client +Experimental +mod_ext_filter.c +ext_filter_module + + +

This is an experimental module and should + be used with care. Test your mod_ext_filter + configuration carefully to ensure that it performs the desired + function. You may wish to review + this information for background on the Apache filtering + model.

+ +

mod_ext_filter presents a simple and familiar + programming model for filters. With this module, a program + which reads from stdin and writes to stdout (i.e., a Unix-style + filter command) can be a filter for Apache. This filtering + mechanism is much slower than using a filter which is specially + written for the Apache API and runs inside of the Apache server + process, but it does have the following benefits:

+ +
    +
  • the programming model is much simpler
  • + +
  • any programming/scripting language can be used, provided + that it allows the program to read from standard input and + write to standard output
  • + +
  • existing programs can be used unmodified as Apache + filters
  • +
+ +

Even when the performance characteristics are not suitable + for production use, mod_ext_filter can be used as + a prototype environment for filters.

+
+ +
Examples + +
Generating HTML from some other type of response + +
+    # mod_ext_filter directive to define a filter to HTML-ize text/c files 
+    # using the external program /usr/bin/enscript, with the type of the 
+    # result set to text/html
+    ExtFilterDefine c-to-html mode=output intype=text/c outtype=text/html \
+                    cmd="/usr/bin/enscript --color -W html -Ec -o - -"
+
+    <Directory "/export/home/trawick/apacheinst/htdocs/c">
+
+    # core directive to cause the new filter to be run on output
+    SetOutputFilter c-to-html
+
+    # mod_mime directive to set the type of .c files to text/c
+    AddType text/c .c
+
+    # mod_ext_filter directive to set the debug level just high 
+    # enough to see a log message per request showing the configuration
+    # in force
+    ExtFilterOptions DebugLevel=1
+
+    </Directory>
+
+
+
+ +
Implementing a content encoding filter + +
+  # mod_ext_filter directive to define the external filter
+  ExtFilterDefine gzip mode=output cmd=/bin/gzip
+
+  <Location /gzipped>
+
+  # core directive to cause the gzip filter to be run on output
+  SetOutputFilter gzip
+
+  # mod_header directive to add "Content-Encoding: gzip" header field
+  Header set Content-Encoding gzip
+
+  </Location>
+
+
+ +

Note: this gzip example is just for the purposes of illustration. + Please refer to mod_deflate for a practical + implementation.

+
+ +
Slowing down the server + +
+  # mod_ext_filter directive to define a filter which runs everything 
+  # through cat; cat doesn't modify anything; it just introduces extra
+  # pathlength and consumes more resources
+  ExtFilterDefine slowdown mode=output cmd=/bin/cat preservescontentlength
+
+  <Location />
+
+  # core directive to cause the slowdown filter to be run several times on 
+  # output
+  SetOutputFilter slowdown slowdown slowdown
+
+  </Location>
+
+
+
+ +
+ + +ExtFilterDefine +ExtFilterDefine filtername parameters +server config + + +

The ExtFilterDefine directive defines the + characteristics of an external filter, including the program to + run and its arguments.

+ +

filtername specifies the name of the filter being + defined. This name can then be used in SetOutputFilter + directives. It must be unique among all registered filters. + At the present time, no error is reported by the + register-filter API, so a problem with duplicate names isn't + reported to the user.

+ +

Subsequent parameters can appear in any order and define the + external command to run and certain other characteristics. The + only required parameter is cmd=. These parameters + are:

+ +
+
cmd=cmdline
+ +
The cmd= keyword allows you to specify the + external command to run. If there are arguments after the + program name, the command line should be surrounded in + quotation marks.
+ +
mode=mode
+ +
mode should be output for now (the + default). In the future, mode=input will be used to + specify a filter for request bodies.
+ +
intype=imt
+ +
This parameter specifies the internet media type (i.e., + MIME type) of documents which should be filtered. By default, + all documents are filtered. If intype= is + specified, the filter will be disabled for documents of other + types.
+ +
outtype=imt
+ +
This parameter specifies the internet media type (i.e., + MIME type) of filtered documents. It is useful when the + filter changes the internet media type as part of the + filtering operation. By default, the internet media type is + unchanged.
+ +
PreservesContentLength
+ +
The PreservesContentLength keyword specifies + that the filter preserves the content length. This is not the + default, as most filters change the content length. In the + event that the filter doesn't modify the length, this keyword + should be specified.
+
+
+
+ + +ExtFilterOptions +ExtFilterOptions + option [option] ... +ExtFilterOptions DebugLevel=0 NoLogStderr +directory + + +

The ExtFilterOptions directive specifies + special processing options for mod_ext_filter. + Option can be one of

+ +
+
DebugLevel=n
+ +
+ The DebugLevel keyword allows you to specify + the level of debug messages generated by + mod_ext_filter. By default, no debug messages + are generated. This is equivalent to + DebugLevel=0. With higher numbers, more debug + messages are generated, and server performance will be + degraded. The actual meanings of the numeric values are + described with the definitions of the DBGLVL_ constants + near the beginning of mod_ext_filter.c. + +

Note: The core directive LogLevel should be used to + cause debug messages to be stored in the Apache error + log.

+
+ +
LogStderr | NoLogStderr
+ +
The LogStderr keyword specifies that + messages written to standard error by the external filter + program will be saved in the Apache error log. + NoLogStderr disables this feature.
+
+ +

Example:

+ + ExtFilterOptions LogStderr DebugLevel=0 + + +

Messages written to the filter's standard error will be stored + in the Apache error log. No debug messages will be generated by + mod_ext_filter.

+
+
+ +
\ No newline at end of file diff --git a/docs/manual/mod/mod_file_cache.xml b/docs/manual/mod/mod_file_cache.xml new file mode 100644 index 0000000000..3e6f4a4ef6 --- /dev/null +++ b/docs/manual/mod/mod_file_cache.xml @@ -0,0 +1,178 @@ + + + + + +mod_file_cache +Caches a static list of files in memory +Experimental +mod_file_cache.c +file_cache_module + + + + +This module should be used with care. You can easily + create a broken site using mod_file_cache, so read this + document carefully. + + +

Caching frequently requested files that change very + infrequently is a technique for reducing server load. + mod_file_cache provides two techniques for caching frequently + requested static files. Through configuration + directives, you can direct mod_file_cache to either open then + mmap()a file, or to pre-open a file and save the file's open + file handle. Both techniques reduce server load when + processing requests for these files by doing part of the work + (specifically, the file I/O) for serving the file when the + server is started rather than during each request.

+ +

Notice: You cannot use this for speeding up CGI programs or + other files which are served by special content handlers. It + can only be used for regular files which are usually served by + the Apache core content handler.

+ +

This module is an extension of and borrows heavily from the + mod_mmap_static module in Apache 1.3.

+
+ +
Using mod_file_cache + +

mod_file_cache caches a list of statically + configured files via MMapFile or CacheFile directives in the + main server configuration.

+ +

Not all platforms support both directives. For example, Apache + on Windows does not currently support the MMapStatic directive, while + other platforms, like AIX, support both. You will receive an error + message in the server error log if you attempt to use an + unsupported directive. If given an unsupported directive, the + server will start but the file will not be cached. On platforms + that support both directives, you should experiment with both to + see which works best for you.

+ +
MmapFile Directive + +

The MmapFile + directive of mod_file_cache maps a list of + statically configured files into memory through the system call + mmap(). This system call is available on most modern + Unix derivates, but not on all. There are sometimes + system-specific limits on the size and number of files that can be + mmap()d, experimentation is probably the easiest way to find + out.

+ +

This mmap()ing is done once at server start or restart, + only. So whenever one of the mapped files changes on the + filesystem you have to restart the server (see the Stopping and Restarting + documentation). To reiterate that point: if the files are + modified in place without restarting the server you + may end up serving requests that are completely bogus. You + should update files by unlinking the old copy and putting a new + copy in place. Most tools such as rdist and + mv do this. The reason why this modules doesn't + take care of changes to the files is that this check would need + an extra stat() every time which is a waste and + against the intent of I/O reduction.

+
+ +
CacheFile Directive + +

The CacheFile + directive of mod_file_cache opens an active + handle or file descriptor to the file (or files) + listed in the configuration directive and places these open file + handles in the cache. When the file is requested, the server + retrieves the handle from the cache and passes it to the + sendfile() (or TransmitFile() on Windows), socket API.

+ +

Insert more details about sendfile API...

+ +

This file handle caching is done once at server start or + restart, only. So whenever one of the cached files changes on + the filesystem you have to restart the server (see the + Stopping and Restarting + documentation). To reiterate that point: if the files are + modified in place without restarting the server you + may end up serving requests that are completely bogus. You + should update files by unlinking the old copy and putting a new + copy in place. Most tools such as rdist and + mv do this.

+
+ +Note Don't bother asking for a for a + directive which recursively caches all the files in a + directory. Try this instead... See the + Include directive, and consider + this command: + + find /www/htdocs -type f -print \
+ | sed -e 's/.*/mmapfile &/' > /www/conf/mmap.conf +
+
+ +
+ + +MMapFile +MMapFile file-path [file-path] ... +server config + + +

The MMapFile directive maps one or more files + (given as whitespace separated arguments) into memory at server + startup time. They are automatically unmapped on a server + shutdown. When the files have changed on the filesystem at + least a HUP or USR1 signal should be send to the server to + re-mmap them.

+ +

Be careful with the file-path arguments: They have + to literally match the filesystem path Apache's URL-to-filename + translation handlers create. We cannot compare inodes or other + stuff to match paths through symbolic links etc. + because that again would cost extra stat() system + calls which is not acceptable. This module may or may not work + with filenames rewritten by mod_alias or + mod_rewrite.

+ +Example + MMapFile /usr/local/apache/htdocs/index.html + +
+
+ + +CacheFile +CacheFile + file-path [file-path] ... +server config + + +

The CacheFile directive opens handles to + one or more files (given as whitespace separated arguments) and + places these handles into the cache at server startup + time. Handles to cached files are automatically closed on a server + shutdown. When the files have changed on the filesystem, the + server should be restarted to to re-cache them.

+ +

Be careful with the file-path arguments: They have + to literally match the filesystem path Apache's URL-to-filename + translation handlers create. We cannot compare inodes or other + stuff to match paths through symbolic links etc. + because that again would cost extra stat() system + calls which is not acceptable. This module may or may not work + with filenames rewritten by mod_alias or + mod_rewrite.

+ +Example + CacheFile /usr/local/apache/htdocs/index.html + +
+ +
+
\ No newline at end of file diff --git a/docs/manual/mod/mod_headers.xml b/docs/manual/mod/mod_headers.xml new file mode 100644 index 0000000000..b71885c2b9 --- /dev/null +++ b/docs/manual/mod/mod_headers.xml @@ -0,0 +1,261 @@ + + + + + +mod_headers +Customization of HTTP request + and response headers +Extension +mod_headers.c +headers_module +RequestHeader is available only in Apache 2.0 + + +

This module provides directives to control and modify HTTP + request and response headers. Headers can be merged, replaced + or removed.

+
+ +
Order of Processing + +

The directives provided by mod_header can occur almost + anywhere within the server configuration. They are valid in the + main server config and virtual host sections, inside + <Directory>, <Location> and <Files> sections, + and within .htaccess files.

+ +

The directives are processed in the following order:

+ +
    +
  1. main server
  2. + +
  3. virtual host
  4. + +
  5. <Directory> sections and .htaccess
  6. + +
  7. <Location>
  8. + +
  9. <Files>
  10. +
+ +

Order is important. These two headers have a different + effect if reversed:

+ + +RequestHeader append MirrorID "mirror 12"
+ RequestHeader unset MirrorID +
+ +

This way round, the MirrorID header is not set. If reversed, + the MirrorID header is set to "mirror 12".

+
+ +
Example + +
    +
  1. Copy all request headers that begin with "TS" to the + response headers: + + + Header echo ^TS* +
  2. + +
  3. Add a header, MyHeader, to the response including a + timestamp for when the request was received and how long it + took to begin serving the request. This header can be used by + the client to intuit load on the server or in isolating + bottlenecks between the client and the server. + + + Header add MyHeader "%D %t" + + results in this header being added to the response: + + MyHeader: D=3775428 t=991424704447256 + +
  4. + +
  5. Say hello to Joe + + + Header add MyHeader "Hello Joe. It took %D microseconds for Apache to serve this request." + + results in this header being added to the response: + + MyHeader: Hello Joe. It took D=3775428 microseconds for Apache to serve this request. + +
  6. + +
  7. Conditionally send MyHeader on the response if and only + if header "MyRequestHeader" is present on the request. This + is useful for constructing headers in response to some client + stimulus. Note that this example requires the services of the + mod_setenvif module. + + + SetEnvIf MyRequestHeader value HAVE_MyRequestHeader
    + Header add MyHeader "%D %t mytext" env=HAVE_MyRequestHeader +
    + If the header "MyRequestHeader: value" is present on the + HTTP request, the response will contain the following + header: + + MyHeader: D=3775428 t=991424704447256 mytext + +
  8. +
+
+ + +RequestHeader +Configure HTTP request headers +RequestHeader set|append|add|unset header +[value] +server config +virtual host +directory +.htaccess +FileInfo + + +

This directive can replace, merge or remove HTTP request + headers. The header is modified just before the content handler + is run, allowing incoming headers to be modified. The action it + performs is determined by the first argument. This can be one + of the following values:

+ +
    +
  • set
    + The request header is set, replacing any previous header + with this name
  • + +
  • append
    + The request header is appended to any existing header of the + same name. When a new value is merged onto an existing header + it is separated from the existing header with a comma. This + is the HTTP standard way of giving a header multiple + values.
  • + +
  • add
    + The request header is added to the existing set of headers, + even if this header already exists. This can result in two + (or more) headers having the same name. This can lead to + unforeseen consequences, and in general "append" should be + used instead.
  • + +
  • unset
    + The request header of this name is removed, if it exists. If + there are multiple headers of the same name, all will be + removed.
  • +
+ +

This argument is followed by a header name, which can + include the final colon, but it is not required. Case is + ignored. For add, append and + set a value is given as the third argument. If + this value contains spaces, it should be surrounded by double + quotes. For unset, no value should be given.

+ +

The RequestHeader directive is processed + just before the request is run by its handler in the fixup phase. + This should allow headers generated by the browser, or by Apache + input filters to be overridden or modified.

+
+
+ + +Header +Configure HTTP response headers +Header set|append|add|unset|echo header +[value] +server config +virtual host +directory +.htaccess +FileInfo + + +

This directive can replace, merge or remove HTTP response + headers. The header is modified just after the content handler + and output filters are run, allowing outgoing headers to be + modified. The action it performs is determined by the first + argument. This can be one of the following values:

+ +
    +
  • set
    + The response header is set, replacing any previous header + with this name. The value may be a format + string.
  • + +
  • append
    + The response header is appended to any existing header of + the same name. When a new value is merged onto an existing + header it is separated from the existing header with a comma. + This is the HTTP standard way of giving a header multiple + values.
  • + +
  • add
    + The response header is added to the existing set of headers, + even if this header already exists. This can result in two + (or more) headers having the same name. This can lead to + unforeseen consequences, and in general "append" should be + used instead.
  • + +
  • unset
    + The response header of this name is removed, if it exists. + If there are multiple headers of the same name, all will be + removed.
  • + +
  • echo
    + Request headers with this name are echoed back in the + response headers. header may be a regular + expression.
  • +
+ +

This argument is followed by a header name, which + can include the final colon, but it is not required. Case is + ignored for set, append, add and unset. The header + name for echo is case sensitive and may be a regular + expression.

+ +

For add, append and + set a value is specified as the third + argument. If value contains spaces, it should be + surrounded by doublequotes. value may be a character + string, a string containing format specifiers or a combination + of both. The following format specifiers are supported in + value:

+ + + + + + +
%t: The time the request was received in Universal +Coordinated Time since the epoch (Jan. 1, 1970) measured in +microseconds. The value is preceded by "t=".
%D: The time from when the request was received to +the time the headers are sent on the wire. This is a measure of the +duration of the request. The value is preceded by "D=".
%{FOOBAR}e: The contents of the environment +variable FOOBAR.
+ +

When the Header directive is used with the + add, append, or set + argument, a fourth argument may be used to specify conditions + under which the action will be taken. If the environment variable specified in the + env=... argument exists (or if the environment + variable does not exist and env=!... is specified) + then the action specified by the Header directive + will take effect. Otherwise, the directive will have no effect + on the request.

+ +

The Header directives are processed just before the response + is sent to the network. These means that it is possible to set + and/or override most headers, except for those headers added by + the header filter.

+
+
+ +
+ diff --git a/docs/manual/mod/mod_imap.xml b/docs/manual/mod/mod_imap.xml new file mode 100644 index 0000000000..489a2053b1 --- /dev/null +++ b/docs/manual/mod/mod_imap.xml @@ -0,0 +1,334 @@ + + + + + +mod_imap +Server-side imagemap processing +Base +mod_imap.c +imap_module + + +

This module processes .map files, thereby + replacing the functionality of the imagemap CGI + program. Any directory or document type configured to use the + handler imap-file (using either + AddHandler or + SetHandler) + will be processed by this module.

+ +

The following directive will activate files ending with + .map as imagemap files:

+ +AddHandler imap-file map + +

Note that the following is still supported:

+ +AddType application/x-httpd-imap map + +

However, we are trying to phase out "magic MIME types" so we + are deprecating this method.

+
+ +
New Features + +

The imagemap module adds some new features that were not + possible with previously distributed imagemap programs.

+ +
    +
  • URL references relative to the Referer: information.
  • + +
  • Default <BASE> assignment through a new map + directive base.
  • + +
  • No need for imagemap.conf file.
  • + +
  • Point references.
  • + +
  • Configurable generation of imagemap menus.
  • +
+
+ +
Imagemap File + +

The lines in the imagemap files can have one of several + formats:

+ + + directive value [x,y ...]
+ directive value "Menu text" [x,y ...]
+ directive value x,y ... "Menu text" +
+

The directive is one of base, + default, poly, circle, + rect, or point. The value is an + absolute or relative URL, or one of the special values listed + below. The coordinates are x,y 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.

+ +
Imagemap File Directives +

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.

+ +
+
base Directive
+ +
Has the effect of <BASE HREF="value">. + The non-absolute URLs of the map-file are taken relative to + this value. The base directive overrides + ImapBase as set in a .htaccess file or in the server + configuration files. In the absence of an ImapBase + configuration directive, base defaults to + http://server_name/.
+ base_uri is synonymous with base. + Note that a trailing slash on the URL is significant.
+ +
default Directive
+ +
The action taken if the coordinates given do not fit any + of the poly, circle or + rect directives, and there are no + point directives. Defaults to + nocontent in the absence of an ImapDefault + configuration setting, causing a status code of 204 No + Content to be returned. The client should keep the + same page displayed.
+ +
poly Directive
+ +
Takes three to one-hundred points, and is obeyed if the + user selected coordinates fall within the polygon defined by + these points.
+ +
circle
+ +
Takes the center coordinates of a circle and a point on + the circle. Is obeyed if the user selected point is with the + circle.
+ +
rect Directive
+ +
Takes the coordinates of two opposing corners of a + rectangle. Obeyed if the point selected is within this + rectangle.
+ +
point Directive
+ +
Takes a single point. The point directive closest to the + user selected point is obeyed if no other directives are + satisfied. Note that default will not be + followed if a point directive is present and + valid coordinates are given.
+
+
+ +
Values + +

The values for each of the directives can any of the following:

+ + +
+
a URL
+ +
The URL can be relative or absolute URL. Relative URLs + can contain '..' syntax and will be resolved relative to the + base value.
+ base itself will not resolved according to the + current value. A statement base mailto: will + work properly, though.
+ +
map
+ +
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'.
+ +
menu
+ +
Synonymous with map.
+ +
referer
+ +
Equivalent to the URL of the referring document. Defaults + to http://servername/ if no Referer: header was + present.
+ +
nocontent
+ +
Sends a status code of 204 No Content, + telling the client to keep the same page displayed. Valid for + all but base.
+ +
error
+ +
Fails with a 500 Server Error. Valid for all + but base, but sort of silly for anything but + default.
+
+
+ +
Coordinates + +
+
0,0 200,200
+ +
A coordinate consists of an x and a y + 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 + 0,0, it is as if no coordinate had been + selected.
+
+ +
+ +
Quoted Text + +
+
"Menu Text"
+ +
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:
+ <a HREF="http://foo.com/">Menu + text</a>
+ If no quoted text is present, the name of the link will be + used as the text:
+ <a + HREF="http://foo.com/">http://foo.com</a>
+ It is impossible to escape double quotes within this + text.
+
+
+
+ +
Example Mapfile + + + #Comments are printed in a 'formatted' or + 'semiformatted' menu.
+ #And can contain html tags. <hr>
+ base referer
+ poly map "Could I have a menu, please?" 0,0 0,10 10,10 + 10,0
+ rect .. 0,0 77,27 "the directory of the referer"
+ circle http://www.inetnebr.com/lincoln/feedback/ 195,0 + 305,27
+ rect another_file "in same directory as referer" 306,0 + 419,27
+ point http://www.zyzzyva.com/ 100,100
+ point http://www.tripod.com/ 200,200
+ rect mailto:nate@tripod.com 100,150 200,0 "Bugs?"
+
+ +
+ +
Referencing your mapfile + + + <A HREF="/maps/imagemap1.map">
+ <IMG ISMAP SRC="/images/imagemap1.gif">
+ </A> +
+
+ + +ImapMenu +Action if no coordinates are given when calling +an imagemap +ImapMenu + none|formatted|semiformatted|unformatted +server config +virtual host +directory +.htaccess +Indexes + + +

The ImapMenu directive determines the + action taken if an imagemap file is called without valid + coordinates.

+ +
+
none
+ +
If ImapMenu is none, no menu is generated, + and the default action is performed.
+ +
formatted
+ +
A formatted 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.
+ +
semiformatted
+ +
In the semiformatted 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 + formatted menu.
+ +
unformatted
+ +
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.
+
+
+
+ + +ImapDefault +Default action when an imagemap is called with coordinates +that are not explicitly mapped +ImapDefault error|nocontent|map|referer|URL +ImapDefault nocontent +server config +virtual host +directory +.htaccess +Indexes + + +

The ImapDefault directive sets the default + default used in the imagemap files. Its value is + overridden by a default directive within the + imagemap file. If not present, the default action + is nocontent, which means that a 204 No + Content is sent to the client. In this case, the client + should continue to display the original page.

+
+
+ + +ImapBase +Default base for imagemap files +ImapBase map|referer|URL +ImapBase http://servername/ +server config +virtual host +directory +.htaccess +Indexes + + +

The ImapBase directive sets the default + base used in the imagemap files. Its value is + overridden by a base directive within the imagemap + file. If not present, the base defaults to + http://servername/.

+
+
+ +
\ No newline at end of file