mirror of
https://github.com/apache/httpd.git
synced 2025-12-24 15:01:03 +03:00
Update documentation to include stuff for mod_example.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@77852 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
133
docs/manual/mod/mod_example.html
Normal file
133
docs/manual/mod/mod_example.html
Normal file
@@ -0,0 +1,133 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE>Apache module mod_example</TITLE>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<!--#include virtual="header.html" -->
|
||||
<H1>Module mod_example</h1>
|
||||
<P>
|
||||
This module is contained in the <CODE>modules/mod_example.c</CODE> file, and
|
||||
<STRONG>is not</STRONG> compiled in by default. It illustrates many of
|
||||
the aspects of the
|
||||
<A
|
||||
HREF="../misc/API.html"
|
||||
REL="Help"
|
||||
>Apache 1.2 API</A>
|
||||
and, when used, demonstrates the manner in which module callbacks are
|
||||
triggered by the server.
|
||||
</P>
|
||||
<H2>Summary</H2>
|
||||
<P>
|
||||
The files in the <CODE>src/modules/example directory</CODE> under the
|
||||
Apache distribution directory tree are provided as an example to those
|
||||
that wish to write modules that use the Apache API.
|
||||
</P>
|
||||
<P>
|
||||
The main file is <CODE>mod_example.c</CODE>, which illustrates all
|
||||
the different callback mechanisms and call syntaces. By no means does
|
||||
an add-on module need to include routines for all of the callbacks -
|
||||
quite the contrary!
|
||||
</P>
|
||||
<P>
|
||||
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.
|
||||
</P>
|
||||
<P>
|
||||
To include the example module in your server, follow the steps below:
|
||||
</P>
|
||||
<OL>
|
||||
<LI>Uncomment the "Module example_module" line near the bottom of
|
||||
the <CODE>src/Configuration</CODE> file. If there isn't one, add
|
||||
it; it should look like this:
|
||||
<PRE>
|
||||
Module example_module modules/example/mod_example.o
|
||||
</PRE>
|
||||
</LI>
|
||||
<LI>Run the <CODE>src/Configure</CODE> script
|
||||
("<SAMP>cd src; ./Configure</SAMP>"). This will
|
||||
build the Makefile for the server itself, and update the
|
||||
<CODE>src/modules/Makefile</CODE> for any additional modules you
|
||||
have requested from beneath that subdirectory.
|
||||
</LI>
|
||||
<LI>Make the server (run "<SAMP>make</SAMP>" in the <CODE>src</CODE>
|
||||
directory).
|
||||
</LI>
|
||||
</OL>
|
||||
<P>
|
||||
To add another module of your own:
|
||||
</P>
|
||||
<OL TYPE="A">
|
||||
<LI><SAMP>mkdir src/modules/<EM>mymodule</EM></SAMP>
|
||||
</LI>
|
||||
<LI><SAMP>cp src/modules/example/* src/modules/<EM>mymodule</EM></SAMP>
|
||||
</LI>
|
||||
<LI>Modify the files in the new directory.
|
||||
</LI>
|
||||
<LI>Follow steps [1] through [3] above, with appropriate changes.
|
||||
</LI>
|
||||
</OL>
|
||||
<H3>
|
||||
Using the <SAMP>mod_example</SAMP> Module
|
||||
</H3>
|
||||
<P>
|
||||
To activate the example module, include a block similar to the
|
||||
following in your <SAMP>srm.conf</SAMP> file:
|
||||
</P>
|
||||
<PRE>
|
||||
<Location /example-info>
|
||||
SetHandler example-handler
|
||||
</Location>
|
||||
</PRE>
|
||||
<P>
|
||||
As an alternative, you can put the following into a
|
||||
<A
|
||||
HREF="core.html#accessfilename"
|
||||
><SAMP>.htaccess</SAMP></A>
|
||||
file and then request the file "test.example" from that
|
||||
location:
|
||||
</P>
|
||||
<PRE>
|
||||
AddHandler example-handler .example
|
||||
</PRE>
|
||||
<P>
|
||||
After reloading/restarting your server, you should be able to browse
|
||||
to this location and see the brief display mentioned earlier.
|
||||
</P>
|
||||
<H2>Directives</H2>
|
||||
<P>
|
||||
<UL>
|
||||
<LI><A HREF="#example">Example</A>
|
||||
</LI>
|
||||
</UL>
|
||||
</P>
|
||||
<HR>
|
||||
<A NAME="example">
|
||||
<H2>Example</H2>
|
||||
</A>
|
||||
<P>
|
||||
<STRONG>Syntax:</STRONG> Example
|
||||
<BR>
|
||||
<STRONG>Default:</STRONG> None
|
||||
<BR>
|
||||
<STRONG>Context:</STRONG> server config, virtual host, directory, .htaccess
|
||||
<BR>
|
||||
<STRONG>Override:</STRONG> Options
|
||||
<BR>
|
||||
<STRONG>Status:</STRONG> Extension
|
||||
<BR>
|
||||
<STRONG>Module:</STRONG> mod_example
|
||||
</P>
|
||||
<P>
|
||||
The Example directive activates the example module's content handler
|
||||
for a particular location or file type. 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.
|
||||
</P>
|
||||
<!--#include virtual="footer.html" -->
|
||||
</BODY>
|
||||
</HTML>
|
||||
Reference in New Issue
Block a user