Apache HTTP サーバ バージョン 2.4
Apache モジュール mod_actions
説明: | メディアタイプやリクエストメソッドに応じて CGI スクリプトを実行する機能を提供 |
---|---|
ステータス: | Base |
モジュール識別子: | actions_module |
ソースファイル: | mod_actions.c |
概要
このモジュールには二つのディレクティブがあります。Action
ディレクティブは特定の MIME タイプのファイルをリクエストされた場合に
CGI スクリプトが実行されるようにします。Script
ディレクティブはリクエストで特定のメソッドが使用されたときに CGI
スクリプトが実行されるようにします。
これはファイルを処理するスクリプトの実行をずっと簡単にします。
Action ディレクティブ
説明: | 特定のハンドラやコンテントタイプに対して CGI を実行するように 設定 |
---|---|
構文: | Action action-type cgi-script [virtual] |
コンテキスト: | サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess |
上書き: | FileInfo |
ステータス: | Base |
モジュール: | mod_actions |
互換性: | virtual 修飾子とハンドラ渡しは
Apache 2.1 で導入されました |
このディレクティブは action-type
がリクエストされたときに cgi-script
が実行されるという動作を追加します。cgi-script は
ScriptAlias
や
AddHandler
によって
CGI スクリプトに設定されたリソースへの URL-path です。
Action-type には
handler か MIME
コンテントタイプを指定できます。リクエストされたドキュメントの URL
とファイルのパスは標準 CGI 環境変数 PATH_INFO
と
PATH_TRANSLATED
を使って伝えられます。
特定のリクエストに対して使用されるハンドラへは、
REDIRECT_HANDLER
変数を使って渡せます。
例
# 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
最初の例では、MIME コンテントタイプが image/gif
のファイルへのリクエストは、指定したスクリプト
/cgi-bin/images.cgi
で処理されます。
2 番目の例では、拡張子が .xyz
のファイルへのリクエストは、指定したスクリプト
/cgi-bin/program.cgi
で処理されます。
オプションの virtual
修飾子を使用すると、
リクエストされたファイルが実際に存在するかどうかを検査しないようにできます。
これは例えば、Action
ディレクティブをバーチャルな
Location に使用したい、といった場合に便利です。
例
<Location /news>
SetHandler news-handler
Action news-handler /cgi-bin/news.cgi virtual
</Location>
参照
Script ディレクティブ
説明: | 特定のリクエストメソッドに対して CGI スクリプトを 実行するように設定 |
---|---|
構文: | Script method cgi-script |
コンテキスト: | サーバ設定ファイル, バーチャルホスト, ディレクトリ |
ステータス: | Base |
モジュール: | mod_actions |
このディレクティブは method
というメソッドを使ってリクエストが行なわれたときに
cgi-script を実行するという動作を追加します。
cgi-script は
ScriptAlias
や
AddHandler
によって
CGI スクリプトに設定されたリソースへの URL-path です。
リクエストされたドキュメントの URL とファイルのパスは標準 CGI
環境変数 PATH_INFO
と PATH_TRANSLATED
を使って伝えられます。
Script PUT
と Script put
はまったく違った効果になります。
Script
コマンドはデフォルトの動作を
追加するだけであることに
注意してください。もし CGI スクリプトが呼ばれたり、リクエストされた
メソッドを内部で扱うことのできる他のリソースがあれば、それが行なわれます。
GET
メソッドの Script
は問合せ
引数がある場合にのみ
(たとえば、foo.html?hi) 呼ばれるということにも注意してください。
そうでない場合は、リクエストは通常通り処理されます。
例
# For <ISINDEX>-style searching
Script GET /cgi-bin/search
# A CGI PUT handler
Script PUT /~bob/put.cgi