<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>Module mod_actions</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_actions</H1>
<P>
This module is contained in the <CODE>mod_actions.c</CODE> file, and
is compiled in by default. It provides for
executing CGI scripts based on media type or request method. It is not
present in versions prior to Apache 1.1.
</P>
<H2>Summary</H2>
<P>
This module lets you run CGI scripts whenever a file of a certain type
is requested. This makes it much easier to execute scripts that
process files.
</P>
<H2>Directives</H2>
<UL>
<LI><A HREF="#action">Action</A>
<LI><A HREF="#script">Script</A>
</UL>

<HR>

<H2><A NAME="action">Action directive</A></H2>
<P>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
><STRONG>Syntax:</STRONG></A> Action <EM>action-type cgi-script</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> FileInfo<BR>
<A
 HREF="directive-dict.html#Status"
 REL="Help"
><STRONG>Status:</STRONG></A> Base<BR>
<A
 HREF="directive-dict.html#Module"
 REL="Help"
><STRONG>Module:</STRONG></A> mod_actions<BR>
<A
 HREF="directive-dict.html#Compatibility"
 REL="Help"
><STRONG>Compatibility:</STRONG></A> Action is only available in Apache 1.1
and later
</P>
<P>
This directive adds an action, which will activate <EM>cgi-script</EM> when
<EM>action-type</EM> is triggered by the request. The <EM>action-type</EM> can
be either a <A HREF="../handler.html">handler</A> or a MIME content type.  It
sends the URL and file path of the requested document using the standard CGI
PATH_INFO and PATH_TRANSLATED environment variables.
</P>
<HR>

<H2><A NAME="script">Script directive</A></H2>
<P>
<A
 HREF="directive-dict.html#Syntax"
 REL="Help"
><STRONG>Syntax:</STRONG></A> Script <EM>method cgi-script</EM><BR>
<A
 HREF="directive-dict.html#Context"
 REL="Help"
><STRONG>Context:</STRONG></A> server config, virtual host, directory<BR>
<A
 HREF="directive-dict.html#Status"
 REL="Help"
><STRONG>Status:</STRONG></A> Base<BR>
<A
 HREF="directive-dict.html#Module"
 REL="Help"
><STRONG>Module:</STRONG></A> mod_actions<BR>
<A
 HREF="directive-dict.html#Compatibility"
 REL="Help"
><STRONG>Compatibility:</STRONG></A> Script is only available in Apache 1.1
and later; arbitrary method use is only available with 1.3.10 and later
</P>

<P>
This directive adds an action, which will activate <i>cgi-script</i> when
a file is requested using the method of <i>method</i>.  It sends the
URL and file path of the requested document using the standard
CGI PATH_INFO and PATH_TRANSLATED environment variables.
</P>
<blockquote>
Prior to Apache 1.3.10, <i>method</i> can only be
one of <code>GET</code>, <code>POST</code>, <code>PUT</code>, or
<code>DELETE</code>.   As of 1.3.10, any arbitrary method name
may be used.  <b>Method names are case-sensitive</b>, so
<code>Script&nbsp;PUT</code> and <code>Script&nbsp;put</code>
have two entirely different effects.
</blockquote>
<P>
Note that the Script command defines default actions only. If a CGI
script is called, or some other resource that is capable of handling
the requested method internally, it will do so. Also note that Script
with a method of <CODE>GET</CODE> will only be called if there are
query arguments present (<EM>e.g.</EM>, foo.html?hi). Otherwise, the request
will proceed normally.
</P>
<P>
Examples:
</P>
<PRE>
    Script GET /cgi-bin/search     #<EM>e.g.</EM> for &lt;ISINDEX&gt;-style searching
    Script PUT /~bob/put.cgi
</PRE>

<!--#include virtual="footer.html" -->
</BODY>
</HTML>
