関連トピック
ISAPI(Internet Services API)
ISAPIを利用すると、従来のCGIプログラムより高速に動作するWebベースのアプリケーションを開発することができます。これは、ISAPIアプリケーションの方がインターネットサービスと密接に統合されるためです。したがって、動的なWebアプリケーション(あるいはスクリプト)を使用して、ご利用のFirstClassシステムを拡張することができます。ISAPIスクリプトを任意の言語で記述して、ご利用のシステム上で実行できるオブジェクトを作成することができます。例えば、WindowsではC++、Visual Basic、Perlスクリプト、Mac OS XではCコンパイラやC++コンパイラなど、標準入力と標準出力の読み書きに対応したコンパイル言語やスクリプト言語があります。
ISAPIプログラムとCGIプログラムで大きく異なる点は、ISAPIは初めてメモリに読み込まれた後もサーバに読み込まれたままになることです。対照的に、CGIプログラムは、ユーザのWebブラウザから各アプリケーションが要求されるとメモリに読み込まれ、そのプログラムが実行されるとメモリから削除されます。このことから、たいていのISAPIプログラムはCGIプログラムより高速に動作します。
AddHandlerドキュメントを利用したISAPIアプリケーションの設定
AddHandlerドキュメントは、インターネットサービスが処理する特定のファイル形式に対して、ファイルの関連付けを行います。このドキュメントで設定したファイルの関連付けは、OSで設定されているファイルの関連付けより優先して適用されます。
AddHandlerドキュメントは次の理由から、有効、または必須のものになります。
・インタプリタの中には、インストール時にファイルの関連付けを自動的には設定しないものがあるため。
・OSの中には、ファイルの関連付けを管理するのが簡単ではないものがあるため。
このAddHandlerドキュメントは管理者デスクトップの[Internet Services]フォルダ内にあり、新規インストールまたはアップグレード時に自動的に作られます。このドキュメントがなく、必要になった場合には新規ドキュメントを作成し、AddHandlerに名前を変更してください。このドキュメントは、AddHandlerとAddURLHandlerという2つの異なるコマンドに対応してます。各コマンドは複数の行を記述することができ、コメントと空白行を使用して説明を加え、読みやすくすることができます。それぞれのコマンド内で、各行を特定の順序で記述する必要はありません。
以下は、AddHandlerコマンドの構文です。
<AddHandler .拡張子>
Site: サイト名または*
ISAPI.Ext: 読み込むISAPIのDLLファイルのフルパス
exec: 実行するCGIのフルパス
</AddHandler>
このうち、
・拡張子は、処理するファイルの拡張子です。
例えば、
・php
・pl
・サイト名または* は、[複数サイトと複数言語の設定(Multiple Sites & Languages)]フォームと他の設定ドキュメントと同じように動作します。
・ISAPI.Ext は、(対応しているISAPIフィルタではなく)ISAPI拡張を実行するために使用されます。
・exec は、実行ファイルを起動し、Windowsに代わってファイルの関連付けを行うために使用するものです。また、PHPなど未対応の異なる種類のスクリプトを実行するためにも使用されます。
1つのAddHandlerコマンド内で、ISAPI.Ext と exec はどちらか一方を記述することができます。両方を記述することはできません。
以下は、AddURLHandlerコマンドの構文です。
<AddURLHandler /URL/goes/here>
Site: サイト名または*
Templates: テンプレートフォルダ名
</AddURLHandler>
インターネットサービスは、このサイトに一致する/URL/goes/hereの要求を受け取ると、その要求を処理するよう指定されたテンプレートフォルダを使用します。
このAddURLHandlerコマンドを利用すると、インターネットサービスは1つのWebサイトで異なる複数の表示を提供することが簡単にできるようになります。例えば、動的な情報だけを提供するオンライン新聞などのWebサイトで、HTMLではなくRSSでコンテンツを配信することができます。RSSリーダからの要求を、HTMLのセットとは異なるテンプレートのセットに誘導することができます。
| ||