Apache > HTTP Server > 文档 > 版本2.2 > 模块
   致谢 | 本篇译者:金步国(其他作品) | 本页最后更新:2006年10月20日[查看最新版本]

Apache模块 mod_actions

说明根据特定的媒体类型或请求方法,激活特定的CGI脚本
状态基本(B)
模块名actions_module
源文件mod_actions.c

概述

此模块有两个指令。Action指令让你可以在对特定MIME类型文件请求的时候运行CGI脚本。Script指令让你能够在使用特定请求方法的时候运行CGI脚本。这使得执行处理文件的CGI脚本更加容易。

Action 指令

说明针对特定的处理器或内容类型激活一个CGI脚本
语法Action action-type cgi-script [virtual]
作用域server config, virtual host, directory, .htaccess
覆盖项FileInfo
状态基本(B)
模块mod_actions
兼容性virtual修饰词仅在 Apache 2.1 及之后的版本中可用

这条指令添加一个当action-type被请求触发时会执行cgi-script的动作。cgi-script是一个URL路径,指向一个已经被用ScriptAliasAddHandler指令指定为CGI脚本的资源。action-type可以是一个处理器或一个MIME内容类型。它使用标准的PATH_INFOPATH_TRANSLATED环境变量来发送此URL和被请求内容的文件路径。用于该请求的处理器通过REDIRECT_HANDLER变量传递。

例子

# 对特定MIME内容类型文件的请求
Action image/gif /cgi-bin/images.cgi

# 对于具有特定扩展名的文件
AddHandler my-file-type .xyz
Action my-file-type /cgi-bin/program.cgi

在第一个例子中,对于所有对MIME类型"image/gif"的请求都将被指定的CGI脚本/cgi-bin/images.cgi进行处理。

在第二个例子中,对于所有对具有扩展名".xyz"的文件的请求都将被指定的CGI脚本/cgi-bin/program.cgi进行处理。

可选的virtual修饰词关闭了对所请求的文件是否真实存在的检查。这个修饰词很有用,比如希望将Action使用于虚拟位置的时候:

示例

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

参见

Script 指令

说明对特定的请求方法激活一个CGI脚本
语法Script method cgi-script
作用域server config, virtual host, directory
状态基本(B)
模块mod_actions

该指令添加一个当文件被method方法请求时会激活脚本cgi-script的动作。cgi-script是一个URL路径,指向一个已用ScriptAliasAddHandler指令指定为CGI脚本的资源。它使用标准的PATH_INFOPATH_TRANSLATED环境变量来发送此URL和被请求内容的文件路径。

可以使用任意的方法名称。方法名大小写敏感,因此 Script PUTScript put 具有完全不同的结果。

注意,Script命令只定义了默认的动作。如果一个CGI脚本或其他能够内部处理此请求的资源被调用,就将这样做。同时注意对应GET方法的脚本只有在提供了查询参数的时候才会被调用(例如:"foo.html?hi")。否则,该请求将被正常处理。

例子

# <ISINDEX>风格的搜索
Script GET /cgi-bin/search

# A CGI PUT 处理器
Script PUT /~bob/put.cgi