Apache HTTP Server Version 2.1

Apache > HTTP Server > Documentation > Version 2.1 > Modules

# Apache Module mod_actions

Available Languages: de | en | ja | ko

Description: | This module provides for executing CGI scripts based on media type or request method.
Status: | Base
Module Identifier: | actions_module
Source File: | mod_actions.c

### Summary

This module has two directives. The `Action` directive lets you run CGI scripts whenever a file of a certain MIME content type is requested. The `Script` directive lets you run CGI scripts whenever a particular method is used in a request. This makes it much easier to execute scripts that process files.

### Directives

### See also

- `mod_cgi`
- Dynamic Content with CGI
- Apache's Handler Use

## Action Directive

Description: | Activates a CGI script for a particular handler or content-type
Syntax: | `Action action-type cgi-script [virtual]`
Context: | server config, virtual host, directory, .htaccess
Override: | FileInfo
Status: | Base
Module: | mod_actions
Compatibility: | The `virtual` modifier and handler passing were introduced in Apache 2.1

This directive adds an action, which will activate cgi-script when action-type is triggered by the request. The cgi-script is the URL-path to a resource that has been designated as a CGI script using `ScriptAlias` or `AddHandler`. The action-type can be either a handler 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. The handler used for the particular request is passed using the `REDIRECT_HANDLER` variable.

### Examples

`# Requests for files of a particular MIME content type:
Action image/gif /cgi-bin/images.cgi
# Files of a particular file extension
AddHandler my-file-type .xyz
Action my-file-type /cgi-bin/program.cgi
`

In the first example, requests for files with a MIME content type of `image/gif` will be handled by the specified cgi script `/cgi-bin/images.cgi`.

In the second example, requests for files with a file extension of `.xyz` are handled by the specified cgi script `/cgi-bin/program.cgi`.

The optional `virtual` modifier turns off the check whether the requested file really exists. This is useful, for example, if you want to use the `Action` directive in virtual locations.

### Example

`<Location /news>
SetHandler news-handler
Action news-handler /cgi-bin/news.cgi virtual
</Location>`

### See also

- `AddHandler`

## Script Directive

Description: | Activates a CGI script for a particular request method.
Syntax: | `Script method cgi-script`
Context: | server config, virtual host, directory
Status: | Base
Module: | mod_actions

This directive adds an action, which will activate cgi-script when a file is requested using the method of method. The cgi-script is the URL-path to a resource that has been designated as a CGI script using `ScriptAlias` or `AddHandler`. The URL and file path of the requested document is sent using the standard CGI `PATH_INFO` and `PATH_TRANSLATED` environment variables.

Any arbitrary method name may be used. Method names are case-sensitive, so `Script PUT` and `Script put` have two entirely different effects.

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 `GET` will only be called if there are query arguments present (e.g., foo.html?hi). Otherwise, the request will proceed normally.

### Examples

`# For <ISINDEX>-style searching
Script GET /cgi-bin/search
# A CGI PUT handler
Script PUT /~bob/put.cgi
`

Available Languages: de | en | ja | ko