環境定義ファイル(httpd.conf)において、以下に示すディレクティブを設定することにより、CGIプログラムの実行を許可します。
CGIプログラムを実行するための設定例を以下に示します。
CGIプログラム用のディレクトリを作成する場合
CGIプログラム用のディレクトリを設定し、そのディレクトリ配下に格納されたファイルをCGIプログラムとして実行します。
拡張子によりCGIプログラムを特定する場合
CGIプログラム用の拡張子を設定し、その拡張子のファイルをCGIプログラムとして実行します。
注意
Interstage HTTP ServerがCGIプログラムに対するリクエストを受信した場合、Interstage HTTP Serverのプロセス(Windows(R)の場合はデーモンプロセス、Solaris/Linuxの場合は通信プロセス)から新たにCGI用プロセスを生成し、そのプロセス上でCGIプログラムを実行します。なお、CGIプログラムが終了すると、CGI用プロセスも終了します。
CGIプログラムから標準エラー出力されたメッセージは、Interstage HTTP Serverのエラーログ(ログレベル「error」)に出力されます。
ネットワーク上の共有資源にアクセスするためには、事前にWebサーバおよび共有資源を格納するマシンの設定を行う必要があります。詳細については、「3.2.30 ネットワーク上の共有資源へのアクセス設定 」を参照してください。
CGIプログラムには、Userディレクティブで設定したユーザ、またはGroupディレクティブで設定したグループの実行権限を設定する必要があります。
■CGIプログラム用のディレクトリを作成する場合
例
CGIプログラム用のディレクトリとしてディレクトリ「C:\Interstage\F3FMihs\servers\FJapache\cgi-bin」を設定して、Webブラウザ(クライアント)から「/cgi-bin」配下のURLが指定された際に、ディレクトリ「C:\Interstage\F3FMihs\servers\FJapache\cgi-bin」配下のファイルをCGIプログラムとして動作させる場合
LoadModule cgi_module "C:/Interstage/F3FMihs/modules/mod_cgi.so" ScriptAlias /cgi-bin/ "C:/Interstage/F3FMihs/servers/FJapache/cgi-bin/"
CGIプログラム用のディレクトリとしてネットワーク上の共有フォルダ(UNCパス)「//hostname/directory」(コンテンツ格納先のホスト「hostname」、共有フォルダ「directory」)を設定して、Webブラウザ(クライアント)から「/cgi-bin」配下のURLが指定された際に、ネットワーク上の共有フォルダ「//hostname/directory」配下のファイルをCGIプログラムとして動作させる場合
LoadModule cgi_module "C:/Interstage/F3FMihs/modules/mod_cgi.so" ScriptAlias /cgi-bin/ "//hostname/directory/" <Directory "//hostname/directory"> Order allow,deny Allow from all </Directory
CGIプログラム用のディレクトリとしてディレクトリ「/opt/FJSVihs/servers/FJapache/cgi-bin」を設定して、Webブラウザ(クライアント)から「/cgi-bin」配下のURLが指定された際に、ディレクトリ「/opt/FJSVihs/servers/FJapache/cgi-bin」配下のファイルをCGIプログラムとして動作させる場合
LoadModule cgi_module "/opt/FJSVihs/modules/mod_cgi.so" ScriptAlias /cgi-bin/ "/opt/FJSVihs/servers/FJapache/cgi-bin/"
■拡張子によりCGIプログラムを特定する場合
例
指定した拡張子「cgi」をCGIプログラム用の拡張子として設定し、Webブラウザ(クライアント)からファイル名の拡張子「cgi」のURLが指定された際に、そのファイルをCGIプログラムとして動作させる場合
LoadModule cgi_module "C:/Interstage/F3FMihs/modules/mod_cgi.so" <Directory C:/Interstage/F3FMihs/servers/FJapache/htdocs> Options ExecCGI AddHandler cgi-script .cgi </Directory>
指定した拡張子「cgi」をCGIプログラム用の拡張子として設定し、Webブラウザ(クライアント)からファイル名の拡張子「cgi」のURLが指定された際に、そのファイルをCGIプログラムとして動作させる場合
LoadModule cgi_module "/opt/FJSVihs/modules/mod_cgi.so" <Directory /opt/FJSVihs/servers/FJapache/htdocs> Options ExecCGI AddHandler cgi-script .cgi </Directory>