![]() |
iPlanet Application Server 管理者ガイド |
第 7 章 Web コネクタプラグインの設定
この章では、iPlanet Application Server 上にあるアプリケーションにユーザのリクエストを送信する Web コネクタのプラグインについて説明します。
Web コネクタプラグインについて
Web コネクタプラグインについて
Web コネクタプラグインは、iPlanet Application Server のインストール時に、使用している Web サーバにインストールされます。Web サーバがインストールされているマシンに iPlanet Application Server をインストールすると、Web コネクタプラグインが同時にインストールされ、Web サーバが自動的に設定されます。
Web サーバがインストールされていないマシンに iPlanet Application Server をインストールする場合は、その Web サーバマシンに Web コネクタプラグインを手動でインストールする必要があります。Web コネクタを手動でインストールする方法については、『インストールガイド』を参照してください。
表 7-1    設定可能な Web コネクタプラグインの機能
コネクタの機能
説明
詳細
Web サーバから iPlanet Application Server への通信時に cookie と隠しフィールドの有効/無効を切り替える
Web サーバの手動設定
iPlanet Application Server をインストールすると、使用している Web サーバは Web コネクタプラグイン用に自動的に設定されます。つまり、Web サーバ上の必要なディレクトリと設定がすべて更新されます。ただし、Web コネクタプラグインをインストールしたときなどには、Web サーバを手動で再設定する必要があります。この手順は iPlanet Application Server と使用している Web サーバ間のコネクションに問題がある場合のみお勧めします。次の手順では、使用している Web サーバと、iPlanet Application Server がインストールされているマシンが同一であるかにかかわらず、Web コネクタプラグインを使うために Web サーバを手動で設定する方法について説明します。
次の手順の中で手順 1 (CGI を有効にする) だけを実行する場合、Web コネクタプラグインは CGI スクリプトとして実行されます。手順全体を実行する場合、Web コネクタプラグインはプラグインとして実行されます。プラグインは、CGI スクリプトより高速で効率的です。
Web サーバをインストールした管理者ユーザとしてログインする必要があります。
iPlanet Web Server の設定
iPlanet Web Server の設定
iPlanet Web Server を再設定するには、次の手順を実行します。
CGI がまだ有効になっていない場合は CGI を有効にします。
次の変更は、すべてのバージョンの iPlanet Web Server の obj.conf ファイルで行う必要があります。
Windows では、「スタート」メニューから「iPlanet Web Server」>「Administer Web Server」を選択します。
管理者の ID とパスワードを入力し「OK」をクリックします。
「iPlanet Server Selector」画面で、ドロップダウンリストから設定する Web サーバのインスタンスを選択して、「Manage」をクリックします。
メニューツールバーから「Programs」をクリックします。
「URL prefix」の下の「CGI directory」画面に「cgi-bin」と入力します。
「CGI directory」の下に cgi-bin のパスを入力します。
Web サーバの設定ディレクトリ内にある obj.conf ファイル (iWS 4.1 まで) または magnus.conf ファイル (iWS 6.0 以降) を編集します。
- iPlanet Web Server 4.1 およびそれ以降の Windows の場合
<drive letter>:¥Netscape¥Server4¥docs¥cgi-bin
- iPlanet Web Server 4.1 およびそれ以降の Solaris の場合
- <iWSInstallDir>/docs/cgi-bin
- これで、Web コネクタプラグインを設定する準備ができました。
- iWS4.1 では、obj.conf ファイルのみを変更します。iWS6.0 以降では、magnus.conf ファイルも変更します。
- iPlanet Web Server 4.1、Windows の場合は、次のパスにある obj.conf ファイルを変更します。
drive letter:¥Netscape¥Server4¥https-machinename¥config
- iPlanet Web Server 4.1、Solaris の場合は、次のパスにある obj.conf ファイルを変更します。
iWSInstallDir/https-machinename/config
- ファイルを変更する前にそのファイルをコピーします。obj.conf ファイルの Init セクションの末尾に次の 2 行を追加します。
Windows の場合
Init fn="load-modules"
funcs=nas_name_trans,gxrequest,gxlog,gxinit,gxredirect,
gxhtmlrequest shlib="<path to iAS bin dir>¥gxnsapi6.dll>Init fn="load-modules"
funcs=nas_name_trans,gxrequest,gxlog,gxinit,gxredirect,
gxhtmlrequest shlib="libgxnsapi6.so"
- iPlanet Web Server 4.1 の場合は shlib に次の文字列を指定します。
Object name=default セクションで type=text/plain セクションの直後に次の行を追加します。
Object name=cgi セクションで Service fn="send-cgi" の行の直前に次の行を挿入します。
- Service fn="gxredirect" fnname="imagemap" method="(GET|HEAD)"
現在のバージョンの obj.conf ファイルと magnus.conf ファイルのコピーを作成し、バックアップが現在のバージョンと一貫性を保つように、次のディレクトリ内のバックアップバージョンにコピーします。
- Service fn="gxrequest"
- さらに、行 Service fn="send-cgi" の直後に次の行を挿入します。
- AddLog fn="gxlog"
Solaris の場合のみWeb サーバの開始スクリプトと終了スクリプトを次のように変更します。
- Windows の場合
- drive letter:iPlanetSuiteSpothttps-machinenameconf_bk
- Solaris の場合
- iWSIstallDir/https-machinename/conf_bk
Web サーバを再起動します。
- 開始スクリプトの場合
- GX_ROOTDIR を iPlanet Application Server がインストールされているディレクトリに設定します。次のようにします。
- GX_ROOTDIR=iASInstallDir; export GX_ROOTDIR
Apache Web サーバの設定
Apache Web サーバ 1.3.19 は、iPlanet Application Server 6.5 リリースでサポートされています。iPlanet Application Server の Web コネクタプラグインで Apache Web サーバを使うには、いくつかの設定手順を手動で実行する必要があります。Web コネクタプラグインをインストールしたマシンに Apache Web サーバをインストールして設定する必要があります。
注 Apache Web サーバを使うには、アプリケーションサーバのインストール時に iPlanet Web Server または Microsoft Internet Information Server (Windows のみ) を選択します。iPlanet Application Server をインストール後、Apache Web サーバをインストールして設定します。
Solaris で Apache Web サーバをインストールするには
Apache Web サイト www.apache.org から Apache Web サーバ 1.3.19 ソースファイルをダウンロードし、tar.gz ファイルをアンパックします。
ソースファイルが保存されて実行されるルートディレクトリに移動します。
Solaris で Apache Web サーバを設定するには
シェル変数 GX_ROOTDIR, LD_LIBRARY_PATH と LD_PRELOAD を apachectl スクリプトに追加します。
注
<ApacheInstallDir>/conf/httpd.conf の末尾に次の行を追加します。
コード例 7-2    # iPlanet Application Server への追加 # LoadModule nas_module<iASInstallDir>/ias/gxlib/libiASApachePlugin.so AddModule iASApacheInterface.cpp <Location "/"> SetHandler ias-handler <iASInstallDir>/ias/GXApp および <iASInstallDir>/ias/ias-samples ディレクトリを <apacheInstallDir>/htdocs/ ディレクトリにコピーします。
「iPlanet Application Server レジストリの設定」に示すように、kregedit を使って iPlanet Application Server レジストリを変更します。
- Web サーバの最小数、最大数、および開始番号は conf/httpd.conf 内の次のキーによって制御されます。これらは Apache が提示するデフォルト値です。
- MinSpareServers 5
- MaxSpareServers 10
StartServers 5
すべての Web サーバが同じログファイルに書き込みます。
Windows での Apache のインストール
Apache Web サイト www.apache.org から Apache 1.3.19 のバイナリをダウンロードしてインストールします。Windows での Apache のインストールの詳細については、Apache Web サイトに掲載されている指示に従ってください。
Windows で Apache Web サーバを設定するには
システム変数 PATH で実行できる Apache のパスを追加します。
iASApachePlugin.dll (Web コネクタプラグイン) のパスをシステム変数 PATH に追加します。
<ApacheInstallDir>/conf/httpd.conf の末尾に次の行を追加します。
<iASInstallDir>/ias/GXApp および <iASInstallDir>/ias/ias-samples ディレクトリを <ApacheInstallDir>/htdocs/ ディレクトリにコピーします。
「iPlanet Application Server レジストリの設定」に示すように、kregedit を使って iPlanet Application Server レジストリを変更します。
iPlanet Application Server レジストリの設定
インストール後、kregedit を使って、iPlanet Application Server レジストリ内の次のキーを変更します。
SOFTWARE/iPlanet/Application Server/6.5/CCS0/HTTPAPI/HTTPPort を Apache Web サーバの リスナポートに設定します。
SOFTWARE/iPlanet/Application Server/6.5/CCS0/HTTPAPI/PATH と SOFTWARE/iPlanet/Application Server/6.5/deployment/LogicalName/WWW_DOCROOT をドキュメントルートディレクトリに設定します。
ドキュメントルートディレクトリ <Apache_Installation_Directory>/htdocs を SOFTWARE/iPlanet/Application Server/6.5/CCS0/TEMPLATE/PATH に追加し、セミコロンで区切ります。
Microsoft Internet Information Server の設定
Microsoft IIS を再設定するときは、次のことに注意してください。
gxisapi.dll ライブラリの名前を gx.dll に変更し、IIS wwwroot の cgi-bin ディレクトリに置く (inetput/wwwroot/cgi-bin/)
次のレジストリエントリ内に ISAPI フィルタファイル gx.dll を設定する
Webconnector プラグインが Windows レジストリへの書き込みパーミッションを持たない場合は例外をスローする
- My ComputerHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices
- W3SVCParameters
- Parameters の下に次の値とともに文字列キー Filter DLLs を追加する
- <drive letter>:inetpubwwwrootcgi-bingx.dll
- プラグインがレジストリを変更できるようにするには、次の手順を実行します。
Web サーバが記録するための Web コネクタプラグインの設定
Web サーバのリクエストはコンポーネントに分かれています。各コンポーネントは HTTP 変数で表されます。HTTP 変数は Web サーバ全体で標準化されているので、Web サーバの使用に関してユーザが行う設定は、Web サーバに依存しません。
データベースフィールドへの HTTP 変数の割り当て
データベースフィールドへの HTTP 変数の割り当て
Web サーバリクエストの特定のコンポーネントのログを有効にするには、Web サーバリクエストが正しく記録されるように、HTTP 変数を特定のデータベースフィールドに割り当てる必要があります。データベースフィールドに HTTP 変数を割り当てるには、Web サーバマシン上の Web コネクタプラグインを使います。Web サーバ マシンと iPlanet Application Server は、同一マシンにインストールされていなくてもかまいません。HTTP 変数をデータベースフィールドに割り当てるには、次の手順を実行します。
コマンドラインに「kregedit」と入力し、iPlanet レジストリエディタを開きます。
HTTP 変数の説明については、使用している Web サーバのマニュアルを参照してください。
次のキーを開きます。
- エディタツールが開いて、iPlanet Application Server に適用するキーと値が表示されます。Web サーバと iPlanet Application Server が別のマシンにインストールされている場合は、エディタが開いて、Web コネクタプラグインに適用するキーと値が表示されます。
データベースフィールドに割り当てる HTTP 変数をダブルクリックします。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥CCS0¥HTTPLOG¥INPUTVARS
- このキーの下の各値は、HTTP 変数と、その変数が割り当てられるデータベースフィールドを表します。
- 値の ID は HTTP 変数です。文字列値はデータベースフィールドです。
- HTTP 変数は HTTP_REFERER のようにすべて大文字です。また、データベースフィールドはデータベーステーブルに表示されるフィールドと同じです。
データベースフィールドの名前を値のデータとして入力し、「OK」をクリックします。
- 「文字列」編集ダイアログボックスが表示されます。
iPlanet レジストリエディタを使って Web コネクタプラグインを変更します。
ログへの HTTP 変数の追加
使用可能な HTTP 変数のリストを変更し、変数をリストに追加してログオプションを拡張することもできます。
コマンドラインに「kregedit」と入力し、iPlanet レジストリエディタを開きます。
すべての使用可能な HTTP 変数のリストと説明については、使用している Web サーバのマニュアルを参照してください。
次のキーを開きます。
- エディタが開き、iPlanet Application Server に適用されるキーと値が表示されます。Web サーバと iPlanet Application Server が別のマシンにインストールされている場合は、エディタが開いて、Web コネクタプラグインに適用するキーと値が表示されます。
新しい HTTP 変数名を使って新しい文字列値を追加します。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥CCS0¥HTTPLOG¥INPUTVARS
- このキーの下の各値は、HTTP 変数と、その変数が割り当てられるデータベースフィールドを表します。
- 値の ID は HTTP 変数です。文字列値はデータベースフィールドです。
- HTTP 変数は HTTP_REFERER のようにすべて大文字です。また、データベースフィールドはデータベーステーブルに表示されるフィールドと同じです。
cookie と隠しフィールドの設定
iPlanet Application Server は、cookie と隠しフィールドセキュリティに関するすべてのモードで Web ブラウザと一緒に動くように設計されています。さまざまなセキュリティモードをサポートするために、Web コネクタプラグインには 3 つの設定が用意されています。次の表でこれらの設定について説明します。
表 7-2    セキュリティモードをサポートする設定
cookie の設定
説明
cookie と隠しフィールドの使い方を設定するには、次の手順を実行します。
コマンドラインに「kregedit」と入力し、iPlanet レジストリエディタを開きます。
次のキーを開きます。
- エディタツールが開いて、iPlanet Application Server に適用するキーと値が表示されます。Web サーバと iPlanet Application Server が別のマシンにインストールされている場合は、レジストリエディタが開いて、Web コネクタプラグインに適用するキーと値が表示されます。
NoCookie DWORD 値をダブルクリックします。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥CCSO¥HTTPAPI
Web ブラウザに渡される cookie を無効にするには、値のデータを 1 に変更します。
- 「値を変更」ダイアログボックスが表示されます。
Web ブラウザに渡される隠しフィールドを無効にするには、値のデータを 2 に変更します。
URL 書き換えの設定
iPlanet Application Server では、ユーザは暗黙的な URL 書き換え (デフォルトの方式) と明示的な URL 書き換えのどちらを使用するかを選択できます。デフォルトでは、暗黙的な URL 書き換えが有効になっています。明示的な URL 書き換えを有効にするには、kregedit を使って iPlanet Application Server レジストリ内の次のパスにある default=implicit キーを変更します。
SOFTWARE/iPlanet/Application Server/6.0/CCS0/HTTPAPI/URLRewrite
明示的な URL 書き換えを有効にするには、値 default=implicit を default=explicit に変更します。
暗黙的な URL 書き換えは Webconnector プラグインによって実行されるので、開発者によるコードの変更は必要ありません。Web コンテナによって実行される明示的な URL 書き換えを有効にする場合は、開発者は、encodeURL と encodeRedirectURL を呼び出すように Servlet または JSP のコードを変更する必要があります。
URL 書き換えの詳細については、『iPlanet Application Server 開発者ガイド』を参照してください。
CGI リクエストのための CGI フラグの設定
一部のリクエストは、CGI モードで処理する必要があります。Web コネクタプラグインでフラグを設定すれば、これらのリクエストを識別できます。CGI リクエストのための CGI フラグを設定するには、次の手順を実行します。
コマンドラインに「kregedit」と入力し、iPlanet レジストリエディタを開きます。
次のキーを開きます。
- エディタが開き、iPlanet Application Server に適用されるキーと値が表示されます。Web サーバと iPlanet Application Server が別のマシンにインストールされている場合は、エディタが開いて、Web コネクタプラグインに適用するキーと値が表示されます。
AgentToken 文字列値をダブルクリックします。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥CCSO¥HTTPAPI
値データとして、CGI モードで処理するリクエストにフラグを入力します。
- 「文字列」編集ダイアログボックスが表示されます。
Web コネクタのポート番号の変更
設定によっては、Web コネクタのポート番号がほかのソフトウェアパッケージと競合する場合があります。コネクタのポート番号を再設定すれば、この競合を解消できます。Web コネクタプラグインのポート番号を変更するには、次の手順を実行します。
コマンドラインに「kregedit」と入力し、iPlanet レジストリエディタを開きます。
次のキーを開きます。
- エディタが開き、iPlanet Application Server に適用されるキーと値が表示されます。Web サーバと iPlanet Application Server が別のマシンにインストールされている場合は、エディタが開いて、Web コネクタプラグインに適用するキーと値が表示されます。
ListenPort DWORD 値をダブルクリックして、値データを使用可能なポート番号に変更します。
- SOFTWARE¥iPlanet¥Application Server¥6.5¥CCSO¥HTTPAPI
アプリケーションコンポーネントへの入力のための HTTP 変数の指定
HTTP 変数は、アプリケーションリクエストの一部として Enterprise JavaBeans (EJB) などのアプリケーションコンポーネントに渡すことができます。その結果、開発者はリクエストに関する特定の情報を判断し、リクエストの処理時にその情報を使えます。たとえば、アプリケーションは HTTP_REFERER 変数を参照して、リクエスト元を判断します。この情報を使って、目的に応じたグリーティング画面を表示したり、リクエスト元の統計を保存したりできます。
HTTP 変数は、レジストリのエントリを編集して管理します。必要に応じて HTTP 変数の有効/無効を切り替えることができます。iPlanet Web Server のデフォルトの HTTP 変数は、次のとおりです。
アプリケーションコンポーネントへの入力として HTTP 変数を指定するには、次の手順を実行します。
コマンドラインに「kregedit」と入力し、iPlanet レジストリエディタを開きます。
該当するキーを開きます。
- エディタが開き、iPlanet Application Server に適用されるキーと値が表示されます。Web サーバと iPlanet Application Server が別のマシンにインストールされている場合は、エディタが開いて、Web コネクタプラグインに適用するキーと値が表示されます。
iPlanet Web サーバの場合は次のキーを開きます。
Microsoft Web サーバの場合は次のキーを開きます。
- SOFTWARE¥iPlanet¥Application
Server¥6.5¥CCSO¥HTTPAPI¥INPUTNSAPI
Apache Web サーバの場合は次のキーを開きます。
- SOFTWAREiPlanetApplication
Server6.5CCSOHTTPAPIINPUTISAPI
- SOFTWARE¥iPlanet¥Application
Server¥6.5¥CCSO¥HTTPAPI¥INPUTAPACHE
HTTP 変数名である名前を追加します。
- 表示された各値は HTTP 変数を表します。この値によって、HTTP 変数がアプリケーションリクエストとともに iPlanet Application Server に渡されるかどうかが決まります。値が 0 以外の場合に、HTTP 変数がアプリケーションリクエストとともに iPlanet Application Server マシンに渡されます。
- HTTP 変数は HTTP_REFERER のようにすべて大文字です。
新しい HTTP 変数 (名前) をダブルクリックし、値データとして次のどちらかの値を入力します。
HTTP 変数を無効にする場合は「0」を入力する
「OK」をクリックします。
注 デフォルトの HTTP 変数を無効にするには、その HTTP 変数名を追加してから、その値を0 に設定します。たとえば、ENTITY_HEADER を追加してその値を 1 に設定し、HTTP_REFERER (デフォルトの HTTP 変数) を追加してその値を 0 に設定すると無効になります。
前へ 目次 索引 DocHome 次へ
Copyright © 2002 Sun Microsystems, Inc. All rights reserved.
最新更新日 2002 年 3 月 6 日