Dispatcher のインストール installing-dispatcher

使用するオペレーティングシステムと Web サーバー向けの最新の Dispatcher インストールファイルを取得するには、Dispatcher リリースノートを使用します。Dispatcher のリリース番号は Adobe Experience Manager のリリース番号とは無関係で、Adobe Experience Manager 6.x、5.x および Adobe CQ 5.x リリースと互換性があります。

NOTE
Adobe Experience Manager 6.5 ではバージョン 4.3.2 以降の Dispatcher が必要です。ただし、Dispatcher のバージョンは AEM から独立しています。例えば、Dispatcher バージョン 4.3.2 は Adobe Experience Manager 6.4 とも互換性があります。

次のファイル命名規則が使用されます。

dispatcher-<web-server>-<operating-system>-<dispatcher-version-number>.<file-format>

dispatcher-apache2.4-linux-x86_64-ssl-4.3.1.tar.gz例えば、ファイルには、Linux i686 上で動作する Apache 2.4 Web サーバー向けの Dispatcher バージョン 4.3.1 が含まれており、tar 形式を使用してパッケージ化されています。

各 Web サーバーのファイル名に使用される Web サーバー識別子を以下の表に示します。

Web サーバー
インストールキット
Apache 2.4
dispatcher-apache 2.4-<other parameters>
Microsoft Internet Information Server 7.5、8、8.5、10
dispatcher-iis-<other parameters>
Sun Java Web Server iPlanet
dispatcher-ns-<other parameters>
CAUTION
使用するプラットフォームで利用可能な最新バージョンの Dispatcher をインストールしてください。強化された機能を利用できるよう、毎年 Dispatcher インスタンスをアップグレードして、最新バージョンを使用してください。
NOTE
特にバージョン 4.3.3 からバージョン 4.3.4 にアップグレードするお客様は、キャッシュできないコンテンツに対するキャッシュヘッダーの設定方法の動作が異なることに気づくでしょう。この変更について詳しくは、リリースノートページを参照してください。

アーカイブごとに次のファイルが含まれています。

  • Dispatcher モジュール
  • サンプルの設定ファイル
  • インストール手順と最新の情報を含む README ファイル
  • 現在および過去のリリースで修正された問題を記載した CHANGES ファイル
NOTE
インストールを開始する前に、最新の変更やプラットフォーム固有の注意事項がないか README ファイルを確認してください。

Microsoft Internet Information Server microsoft-internet-information-server

この Web サーバーのインストール方法については、次のリソースを参照してください。

必要な IIS コンポーネント required-iis-components

IIS バージョン 8.5 および 10 には、以下の IIS コンポーネントがインストールされている必要があります。

  • ISAPI 拡張機能

Web Server(IIS)役割も追加する必要があります。役割とコンポーネントを追加するには、Server Manager を使用します。

Microsoft IIS - Dispatcher モジュールのインストール microsoft-iis-installing-the-dispatcher-module

Microsoft インターネットインフォメーションサービスには次のようなアーカイブファイルが必要です。

  • dispatcher-iis-<operating-system>-<dispatcher-release-number>.zip

ZIP ファイルには以下のファイルが含まれます。

ファイル
説明
disp_iis.dll
Dispatcher のダイナミックリンクライブラリファイル。
disp_iis.ini
IIS 用の設定ファイル。このサンプルを要件に合わせて更新できます。注意:ini ファイルの name-root は dll と同じである必要があります。
dispatcher.any
Dispatcher 用のサンプルの設定ファイル。
author_dispatcher.any
オーサーインスタンスで動作する Dispatcher 用のサンプルの設定ファイル。
README
インストール手順と最新の情報を含む Readme ファイル。注意:インストールを開始する前に、このファイルを確認してください。
CHANGES
現在および過去のリリースで修正された問題を記載した Changes ファイル。

以下の手順を実行して、Dispatcher ファイルを適切な場所にコピーします。

  1. Windows エクスプローラーを使用して、<IIS_INSTALLDIR>/Scripts ディレクトリを作成します。例:C:\inetpub\Scripts

  2. 以下のファイルを Dispatcher パッケージからこの Scripts ディレクトリに抽出します。

    • disp_iis.dll

    • disp_iis.ini

    • Dispatcher が AEM オーサーインスタンスで動作しているか、パブリッシュインスタンスで動作しているかによって、以下のファイルのどちらか

      • オーサーインスタンス:author_dispatcher.any
      • パブリッシュインスタンス:dispatcher.any

Microsoft IIS - Dispatcher の INI ファイルの設定 microsoft-iis-configure-the-dispatcher-ini-file

disp_iis.ini ファイルを編集して Dispatcher のインストールを設定します。.ini ファイルの基本的なフォーマットを次に示します。

[main]
configpath=<path to dispatcher.any>
loglevel=1|2|3
servervariables=0|1
replaceauthorization=0|1

各プロパティについて、以下の表に説明します。

パラメーター
説明
configpath
ローカルファイルシステム内の dispatcher.any の場所(絶対パス)。
logfile
dispatcher.log ファイルの場所。このプロパティが設定されていない場合、ログメッセージは Windows のイベントログに出力されます。
loglevel
イベントログへのメッセージ出力に使用するログレベルを定義します。次の値を指定できます。ログファイルのログレベル:
0 - エラーメッセージのみ。
1 - エラーと警告。
2 - エラー、警告および情報メッセージ
3 - エラー、警告、情報およびデバッグメッセージ。
メモ:インストールおよびテスト時はログレベルを 3 に、実稼動環境で実行する場合は 0 に設定することをお勧めします。
replaceauthorization
HTTP 要求内の認証ヘッダーの処理方法を指定します。有効な値は次のとおりです。
0 - 認証ヘッダーは変更されていません。
1 -「Basic」を除く、「Authorization」という名前のすべてのヘッダーを、その「Basic <IIS:LOGON\_USER>」と同等のものに置き換えます。
servervariables
サーバー変数の処理方法を定義します。
0 - IIS サーバー変数は Dispatcher および AEM に送信されません。
1 - すべての IIS サーバー変数(LOGON\_USER, QUERY\_STRING, ... など)は、要求ヘッダー付きで Dispatcher に(およびキャッシュされていない場合は AEM インスタンスにも)送信されます。
サーバー変数は、AUTH\_USER, LOGON\_USER, HTTPS\_KEYSIZE など多数あります。すべてのサーバー変数とその詳細の一覧は、IIS のドキュメントを参照してください。
enable_chunked_transfer
クライアント応答の一括転送を有効(1)または向こう(0)にするかを定義します。デフォルト値は 0 です。

設定例:

[main]
configpath=C:\Inetpub\Scripts\dispatcher.any
loglevel=1
servervariables=1
replaceauthorization=0

Microsoft IIS の設定 configuring-microsoft-iis

Dispatcher ISAPI モジュールを統合するように IIS を設定します。IIS では、ワイルドカードアプリケーションマッピングを使用します。

匿名アクセスの設定 - IIS 8.5 および 10 configuring-anonymous-access-iis-and

オーサーインスタンス上のデフォルトのフラッシュレプリケーションエージェントは、フラッシュ要求と一緒にセキュリティ資格情報を送信しないように設定されています。したがって、Dispatcher キャッシュとして使用する Web サイトでは、匿名アクセスを許可する必要があります。

Web サイトが認証メソッドを使用する場合は、それに応じてフラッシュレプリケーションエージェントを設定する必要があります。

  1. IIS Manager を開き、Dispatcher キャッシュとして使用する Web サイトを選択します。
  2. 機能ビューモードを使用して、「IIS」セクションで「認証」をダブルクリックします。
  3. 匿名認証が有効でない場合は「匿名認証」を選択し、「操作」領域で「有効」をクリックします。

Dispatcher ISAPI モジュールの統合 - IIS 8.5 および 10 integrating-the-dispatcher-isapi-module-iis-and

以下の手順を実行して、Dispatcher ISAPI モジュールを IIS に追加します。

  1. IIS Manager を開きます。

  2. Dispatcher キャッシュとして使用する Web サイトを選択します。

  3. 機能ビューモードを使用して、「IIS」セクションで「ハンドラーマッピング」をダブルクリックします。

  4. ハンドラーマッピングページの操作パネルで、「ワイルドカードスクリプトマップの追加」をクリックし、以下のプロパティ値を追加して、「OK」をクリックします。

    • 要求パス:*
    • 実行可能ファイル:disp_iis.dll ファイルの絶対パス。例:C:\inetpub\Scripts\disp_iis.dll
    • 名前:ハンドラーマッピングのわかりやすい名前。例:Dispatcher
  5. 表示されるダイアログボックスで、disp_iis.dll ライブラリを ISAPI および CGI の制限リストに追加して、「はい」をクリックします。

    IIS 7.0 および 7.5 の場合、設定は完了です。IIS 8.0 を設定する場合は、残りの手順を続行します。

  6. (IIS 8.0)ハンドラーマッピングのリストで、作成したハンドラーマッピングを選択し、「操作」領域で「編集」をクリックします。

  7. (IIS 8.0)スクリプトマップの編集ダイアログボックスで、「要求の制限」ボタンをクリックします。

  8. (IIS 8.0)ハンドラーをまだキャッシュされていないファイルおよびフォルダー用に使用するには、「要求のマップ先が次の場合のみハンドラーを呼び出す」を選択解除してから「OK」をクリックします。

  9. (IIS 8.0)スクリプトマップの編集ダイアログボックスで、「OK」をクリックします。

キャッシュへのアクセス権の設定 - IIS 8.5 および 10 configuring-access-to-the-cache-iis-and

デフォルトのアプリケーションプールユーザーに、Dispatcher キャッシュとして使用するフォルダーへの書き込みアクセス権を付与します。

  1. Dispatcher キャッシュとして使用する Web サイトのルートフォルダー(C:\inetpub\wwwroot など)を右クリックして、「プロパティ」をクリックします。

  2. 「セキュリティ」タブで「編集」をクリックし、アクセス許可ダイアログボックスで「追加」をクリックします。ユーザーアカウントを選択するためのダイアログボックスが表示されます。「ロケーション」ボタンをクリックし、コンピューター名を選択して、「OK」をクリックします。

    次の手順が完了するまで、このダイアログボックスは開いたままにします。

  3. IIS Manager で、Dispatcher キャッシュに使用する IIS サイトを選択し、ウィンドウの右側で「詳細設定」をクリックします。

  4. Application Pool プロパティの値を選択し、クリップボードにコピーします。

  5. 開いているダイアログボックスに戻ります。「選択するオブジェクト名を入力してください」ボックスに「IIS AppPool\」と入力してから、クリップボードの内容を貼り付けます。値は次の例のようになります。

    IIS AppPool\DefaultAppPool

  6. 「名前の確認」ボタンをクリックします。Windows によってユーザーアカウントが解決されたら、「OK」をクリックします。

  7. Dispatcher フォルダーのアクセス許可ダイアログボックスで、追加したアカウントを選択し、アカウントに対する​ フルコントロール以外 ​のすべてのアクセス許可を有効にして、「OK」をクリックします。「OK」をクリックして、フォルダーのプロパティダイアログボックスを閉じます。

JSON の MIME タイプの登録 - IIS 8.5 および 10 registering-the-json-mime-type-iis-and

Dispatcher で JSON 呼び出しを許可する場合、以下の手順を実行して、JSON の MIME タイプを登録します。

  1. IIS Manager で、Web サイトを選択し、機能ビューを使用して、「MIME タイプ」をダブルクリックします。

  2. JSON の拡張子がリストにない場合は、操作パネルで「追加」をクリックし、以下のプロパティ値を入力して、「OK」をクリックします。

    • ファイル名拡張子:.json
    • MIME Type: application/json

非表示セグメント bin の削除 - IIS 8.5 および 10 removing-the-bin-hidden-segment-iis-and

以下の手順を実行して、非表示セグメント bin を削除します。新しくない Web サイトには、この非表示セグメントが含まれていることがあります。

  1. IIS Manager で、Web サイトを選択し、機能ビューを使用して、「要求のフィルタリング」をダブルクリックします。
  2. bin セグメントを選択し、「削除」をクリックして、確認ダイアログボックスで「はい」をクリックします。

IIS メッセージのファイルへの記録 - IIS 8.5 および 10 logging-iis-messages-to-a-file-iis-and

以下の手順を実行して、Dispatcher のログメッセージを Windows のイベントログではなくログファイルに書き込みます。Dispatcher がログファイルを使用するように設定し、そのファイルへの書き込みアクセス権を IIS に付与する必要があります。

  1. Windows エクスプローラーを使用して、IIS インストール環境の logs フォルダーの下に dispatcher というフォルダーを作成します。一般的なインストール環境のこのフォルダーのパスは、C:\inetpub\logs\dispatcher です。

  2. Dispatcher フォルダーを右クリックして、「プロパティ」をクリックします。

  3. 「セキュリティ」タブで「編集」をクリックし、アクセス許可ダイアログボックスで「追加」をクリックします。ユーザーアカウントを選択するためのダイアログボックスが表示されます。「ロケーション」ボタンをクリックし、コンピューター名を選択して、「OK」をクリックします。

    次の手順が完了するまで、このダイアログボックスは開いたままにします。

  4. IIS Manager で、Dispatcher キャッシュに使用する IIS サイトを選択し、ウィンドウの右側で「詳細設定」をクリックします。

  5. Application Pool プロパティの値を選択し、クリップボードにコピーします。

  6. 開いているダイアログボックスに戻ります。「選択するオブジェクト名を入力してください」ボックスに「IIS AppPool\」と入力してから、クリップボードの内容を貼り付けます。値は次の例のようになります。

    IIS AppPool\DefaultAppPool

  7. 「名前の確認」ボタンをクリックします。Windows によってユーザーアカウントが解決されたら、「OK」をクリックします。

  8. Dispatcher フォルダーのアクセス許可ダイアログボックスで、追加したアカウントを選択し、アカウントに対するすべてのアクセス許可(フル コントロール以外)を有効にして、「OK」をクリックします。「OK」をクリックして、フォルダーのプロパティダイアログボックスを閉じます。

  9. テキストエディターを使用して、disp_iis.ini ファイルを開きます。

  10. 次の例のようなテキスト行を追加して、ログファイルの場所を設定し、ファイルを保存します。

    code language-xml
    logfile=C:\inetpub\logs\dispatcher\dispatcher.log
    

次の手順 next-steps

Dispatcher の使用を始める前に、以下のことを理解しておく必要があります。

Apache Web サーバー apache-web-server

CAUTION
インストール手順は、Windows の場合と Unix の場合の両方について記載されています。手順は慎重に実行してください。

Apache Web サーバーのインストール installing-apache-web-server

Apache Web サーバーのインストールについては、オンラインまたはディストリビューション内のインストールマニュアルを参照してください。

CAUTION
ソースファイルをコンパイルして Apache バイナリファイルを作成する場合は、必ず​ 動的モジュールサポート ​を有効にしてください。有効にするには、–enable-shared オプションのいずれかを使用します。少なくとも、mod_so モジュールを含めます。
詳しくは、Apache Web サーバーのインストールマニュアルを参照してください。

Apache HTTP サーバーのセキュリティに関するヒントおよびセキュリティレポートも参照してください。

Apache Web サーバー - Dispatcher モジュールの追加 apache-web-server-add-the-dispatcher-module

Dispatcher は次のいずれかの形式で提供されます。

  • Windows:ダイナミックリンクライブラリ(DLL)
  • Unix:動的共有オブジェクト(DSO)

インストールアーカイブファイルには、次のファイルが含まれています。選択した環境が Windows か Unix かによって異なります。

ファイル
説明
disp_apache<x.y>.dll
Windows:Dispatcher のダイナミックリンクライブラリファイル。
dispatcher-apache<x.y>-<rel-nr>.so
UNIX:Dispatcher の共有オブジェクトライブラリファイル。
mod_dispatcher.so
UNIX:サンプルリンク。
http.conf.disp<x>
Apache サーバー用のサンプル設定ファイル。
dispatcher.any
Dispatcher 用のサンプルの設定ファイル。
README
インストール手順と最新の情報を含む Readme ファイル。注意:インストールを開始する前に、このファイルを確認してください。
CHANGES
現在および過去のリリースで修正された問題を記載した Changes ファイル。

次の手順を実行して、Apache Web サーバーに Dispatcher を追加します。

  1. Dispatcher ファイルを、適切な Apache モジュールディレクトリに配置します。

    • Windowsdisp_apache<x.y>.dll を、<APACHE_ROOT>/modules に配置します。
    • UNIX:インストール環境に応じて、<APACHE_ROOT>/libexec ディレクトリまたは <APACHE_ROOT>/modules ディレクトリを指定します。
      dispatcher-apache<options>.so を、このディレクトリにコピーします。
      長期的な保守を簡単にするために、mod_dispatcher.so という名前で Dispatcher へのシンボリックリンクを作成することもできます。
      ln -s dispatcher-apache<x>-<os>-<rel-nr>.so mod_dispatcher.so
  2. dispatcher.any ファイルを <APACHE_ROOT>/conf ディレクトリにコピーします。

    メモ: Dispatcher モジュールの DispatcherLog プロパティが適切に設定されていれば、このファイルを別の場所に配置できます(以下の Dispatcher 固有の設定エントリを参照してください)。

Apache Web サーバー - SELinux プロパティの設定 apache-web-server-configure-selinux-properties

RedHat Linux Kernel 2.6 上で SELinux を有効にして Dispatcher を実行する場合、Dispatcher のログファイルに次のようなエラーメッセージが書き込まれることがあります。

Mon Jun 30 00:03:59 2013] [E] [16561(139642697451488)] Unable to connect to backend rend01 (10.122.213.248:4502): Permission denied

これは、SELinux セキュリティの有効化が原因の可能性があります。その場合、以下のタスクを実行する必要があります。

  • Dispatcher モジュールファイルの SELinux コンテキストを設定する。
  • ネットワーク接続を行う HTTPD スクリプトおよびモジュールを有効にする。
  • キャッシュされたファイルを保存するドキュメントルートの SELinux コンテキストを設定する。

[path to the dispatcher.so file] を Apache Web サーバーにインストールした Dispatcher モジュールへのパスで置き換え、path to the docroot を docroot があるパス(例:/opt/cq/cache)で置き換えて、以下のコマンドをターミナルウィンドウに入力します。

semanage fcontext -a -t httpd_modules_t [path to the dispatcher.so file]
setsebool -P httpd_can_network_connect on
chcon -R --type httpd_sys_rw_content_t [path to the docroot]
semanage fcontext -a -t httpd_sys_rw_content_t "[path to the docroot](/.*)?"

Apache Web サーバー - Dispatcher 用の Apache Web サーバーの設定 apache-web-server-configure-apache-web-server-for-dispatcher

Apache Web サーバーは、httpd.conf を使用して設定する必要があります。Dispatcher インストールキットには、httpd.conf.disp<x> というサンプルの設定ファイルがあります。

以下の手順は必ずおこなってください。

  1. <APACHE_ROOT>/conf に移動します。

  2. httpd.conf を開いて編集します。

  3. 次の設定エントリを説明の順に追加する必要があります。

    • LoadModule:起動時のモジュールの読み込み。
    • Dispatcher 固有の設定エントリ(DispatcherConfig、DispatcherLogDispatcherLogLevel など)。
    • SetHandler:Dispatcher をアクティベートします。LoadModule
    • ModMimeUsePathInfomod_mime の動作を設定します。
  4. (オプション)htdocs ディレクトリの所有者を変更することをお勧めします。

    • Apache サーバーはルートとして起動しますが、子プロセスはデーモンとして起動します(セキュリティのため)。ドキュメントルート(<APACHE_ROOT>/htdocs)は、ユーザーデーモンに属している必要があります。

      code language-xml
      cd <APACHE_ROOT>
      chown -R daemon:daemon htdocs
      

LoadModule

次の表に、使用例を示します。実際のエントリは、使用する Apache Web サーバーによって異なります。

Windows
... LoadModule dispatcher_module modules\disp_apache.dll ...
UNIX(シンボリックリンクと仮定)
... LoadModule dispatcher_module libexec/mod_dispatcher.so ...
NOTE
各ステートメントの最初のパラメーターは、以上の例のとおりに記述する必要があります。
このコマンドについて詳しくは、付属のサンプルの設定ファイル、および Apache Web サーバーのドキュメントを参照してください。

Dispatcher 固有の設定エントリ

Dispatcher 固有の設定エントリは、LoadModule エントリの後に配置されます。次の表に設定例を示します。この例は Unix でも Windows でも使用できます。

Windows および UNIX

...
<IfModule disp_apache2.c>
DispatcherConfig conf/dispatcher.any
DispatcherLog logs/dispatcher.log DispatcherLogLevel 3
DispatcherNoServerHeader 0 DispatcherDeclineRoot 0
DispatcherUseProcessedURL 0
DispatcherPassError 0
DispatcherKeepAliveTimeout 60
</IfModule>
...
NOTE
特にバージョン 4.3.3 からバージョン 4.3.4 にアップグレードするお客様は、キャッシュできないコンテンツに対するキャッシュヘッダーの設定方法の動作が異なることに気づくでしょう。この変更について詳しくは、リリースノートのページを参照してください。

個別の設定パラメーターの内容:

パラメーター
説明
DispatcherConfig
Dispatcher 設定ファイルの場所と名前。
このプロパティがメインサーバー設定にある場合、すべての仮想ホストがプロパティ値を継承します。ただし、仮想ホストに DispatcherConfig プロパティを含めて、メインサーバー設定をオーバーライドできます。
DispatcherLog
ログファイルの場所と名前。
DispatcherLogLevel
ログファイルのログレベル:
0 - エラー
1 - 警告
2 - 情報
3 - デバッグ
メモ:インストールおよびテスト時はログレベルを 3 に設定し、実稼動環境で実行する場合は 0 に設定することをお勧めします。
DispatcherNoServerHeader

このパラメーターは廃止されており、効果はありません。

​使用するサーバーヘッダーを定義します。

  • 未定義または 0 - HTTP サーバーヘッダーには AEM バージョンが含まれます。
  • 1 - Apache サーバーヘッダーを使用します。
DispatcherDeclineRoot
ルート「/」への要求を拒否するかどうかを定義します。
0 - / への要求を受け入れます。
1 - / への要求を Dispatcher は処理しません。適切なマッピングをおこなうには mod_alias を使用してください。
DispatcherUseProcessedURL
Dispatcher による以降の処理のすべてに、事前に処理された URL を使用するかどうかを定義します。
0 - Web サーバーに渡された元の URL を使用します。
1 - Dispatcher は、Web サーバーに渡された元の URL の代わりに、Dispatcher に先行するハンドラー(つまり、mod_rewrite)が既に処理した URL を使用します。例えば、元の URL または処理された URL のどちらかが Dispatcher のフィルターと一致する場合などです。URL は、キャッシュファイル構造の基礎としても使用されます。mod_rewrite については、Apache Web サイトのドキュメント(Apache 2.4 など)を参照してください。mod_rewrite を使用する場合は、'passthrough
DispatcherPassError
ErrorDocument 処理のエラーコードのサポート方法を定義します。
0 - Dispatcher はクライアントへのすべてのエラー応答をスプールします。
1 - Dispatcher はクライアントへのエラー応答(ステータスコードが 400 以上の場合)をスプールしませんが、ステータスコードを Apache に渡します。Apache では、ErrorDocument 命令によってそうしたステータスコードを処理できます。
コード範囲 - 応答を Apache に渡すエラーコードの範囲を指定します。その他のエラーコードはクライアントに渡されます。例えば、次の設定では、エラー 412 の応答をクライアントに渡し、その他すべてのエラーを Apache に渡します。DispatcherPassError 400-411,413-417
DispatcherKeepAliveTimeout
キープアライブタイムアウトを秒単位で指定します。Dispatcher バージョン 4.2.0 以降では、デフォルトのキープアライブ値は 60 です。値 0 はキープアライブを無効にします。
DispatcherNoCanonURL
このパラメーターを On に設定すると、正規化された URL ではなく 生の URL がバックエンドに渡され、DispatcherUseProcessedURLの設定がオーバーライドされます。デフォルト値はオフです。
メモ:Dispatcher 設定内のフィルタールールは、生の URL ではなく、サニタイズされた URL に対して常に評価されます。
NOTE
パスエントリには、Apache web サーバーのルートディレクトリの相対パスを指定します。
NOTE
サーバーヘッダーのデフォルトの設定は次のとおりです。
ServerTokens Full
DispatcherNoServerHeader 0
この設定は、(統計目的で)AEM バージョンを示します。このような情報をヘッダー内で利用できないようにするには、次のように設定します。
ServerTokens Prod
詳しくは、ServerTokens 命令に関する Apache ドキュメント(Apache 2.4 の場合など)を参照してください。

SetHandler

前述のエントリの後に、SetHandler ステートメントを設定のコンテキスト(<Directory><Location>)に追加し、Dispatcher が受信する要求を処理できるようにする必要があります。次の例では、Web サイト全体に対する要求を処理するように Dispatcher を設定します。

Windows および UNIX

...
<Directory />
<IfModule disp_apache2.c>
SetHandler dispatcher-handler
</IfModule>

Options FollowSymLinks
AllowOverride None
</Directory>
...

次の例では、仮想ドメインに対する要求を処理するように Dispatcher を設定します。

Windows

...
<VirtualHost 123.45.67.89>
ServerName www.mycompany.com
DocumentRoot _\[cache-path\]_\\docs
<Directory _\[cache-path\]_\\docs>
<IfModule disp_apache2.c>
SetHandler dispatcher-handler
</IfModule>
AllowOverride None
</Directory>
</VirtualHost>
...

UNIX

...
<VirtualHost 123.45.67.89>
ServerName www.mycompany.com
DocumentRoot /usr/apachecache/docs
<Directory /usr/apachecache/docs>
<IfModule disp_apache2.c>
SetHandler dispatcher-handler
</IfModule>
AllowOverride None
</Directory>
</VirtualHost>
...
NOTE
SetHandler ステートメントのパラメーターは、モジュールで定義されているハンドラーの名前なので、以上の例のとおりに記述する必要があります。**
このコマンドについて詳しくは、付属のサンプルの設定ファイル、および Apache Web サーバーのドキュメントを参照してください。

ModMimeUsePathInfo

SetHandler ステートメントの後に、ModMimeUsePathInfo の定義も追加する必要があります。

NOTE
ModMimeUsePathInfo パラメーターは、Dispatcher バージョン 4.0.9 以上を使用している場合にのみ使用および設定してください。
(Dispatcher バージョン 4.0.9 は 2011 年にリリースされました。それ以前のバージョンを使用している場合は、最新の Dispatcher バージョンにアップグレードすることをお勧めします。)

すべての Apache 設定で、次のように ModMimeUsePathInfo パラメーターを On にする必要があります。

ModMimeUsePathInfo On

mod_mime モジュール(例は Apache Module mod_mime を参照)は、コンテンツメタデータを HTTP 応答用に選択されたコンテンツに割り当てる際に使用するものです。デフォルト設定では、mod_mime によるコンテンツタイプの指定で、ファイルまたはディレクトリにマップされる URL の一部だけが使用されます。

ModMimeUsePathInfoパラメーターを On にすると、mod_mime によるコンテンツタイプの指定が​ 完全な URL に基づいて行われます。つまり、仮想リソースの拡張子に基づいてメタ情報が適用されます。

以下に ModMimeUsePathInfo のアクティベートの例を示します。

Windows および UNIX

...
<Directory />
<IfModule disp_apache2.c>
SetHandler dispatcher-handler
ModMimeUsePathInfo On
</IfModule>

Options FollowSymLinks
AllowOverride None
</Directory>
...

HTTPS のサポートの有効化(UNIX および Linux) enable-support-for-https-unix-and-linux

Dispatcher は、OpenSSL を使用して HTTP 経由でのセキュアな通信を実装します。Dispatcher バージョン 4.2.0 からは、OpenSSL 1.0.0 および OpenSSL 1.0.1 がサポートされています。デフォルトでは、Dispatcher は OpenSSL 1.0.0 を使用します。OpenSSL 1.0.1 を使用するには、以下の手順を実行して、Dispatcher がインストールされている OpenSSL ライブラリを使用できるように、シンボリックリンクを作成します。

  1. ターミナルを開き、現在のディレクトリを OpenSSL ライブラリがインストールされているディレクトリに変更します。例を以下に示します。

    code language-shell
    cd /usr/lib64
    
  2. シンボリックリンクを作成するには、以下のコマンドを入力します。

    code language-shell
    ln -s libssl.so libssl.so.1.0.1
    ln -s libcrypto.so libcrypto.so.1.0.1
    
NOTE
カスタマイズバージョンの Apache を使用している場合は、Apache と Dispatcher が同じバージョンの OpenSSL を使用してコンパイルされていることを確認してください。

次の手順 next-steps-1

Dispatcher の使用を始める前に、次の作業を実行する必要があります。

Sun Java System Web Server/iPlanet sun-java-system-web-server-iplanet

NOTE
Windows の場合と Unix の場合の両方での手順を記載しています。
実行する手順を選択する際に注意してください。

Sun Java System Web Server/iPlanet - Web サーバーのインストール sun-java-system-web-server-iplanet-installing-your-web-server

次の Web サーバーのインストール方法について詳しくは、各サーバーのドキュメントを参照してください。

  • Sun Java System Web Server
  • iPlanet Web Server

Sun Java System Web Server/iPlanet - Dispatcher モジュールの追加 sun-java-system-web-server-iplanet-add-the-dispatcher-module

Dispatcher は次のいずれかの形式で提供されます。

  • Windows:ダイナミックリンクライブラリ(DLL)
  • Unix:動的共有オブジェクト(DSO)

インストールアーカイブファイルには、次のファイルが含まれています。選択した環境が Windows か Unix かによって異なります。

ファイル
説明
disp_ns.dll
Windows:Dispatcher のダイナミックリンクライブラリファイル。
dispatcher.so
UNIX:Dispatcher の共有オブジェクトライブラリファイル。
dispatcher.so
UNIX:サンプルリンク。
obj.conf.disp
iPlanet/Sun Java System Web Server 用のサンプルの設定ファイル。
dispatcher.any
Dispatcher 用のサンプルの設定ファイル。
README
インストール手順と最新の情報を含む Readme ファイル。注意:インストールを開始する前に、このファイルを確認してください。
CHANGES
現在および過去のリリースで修正された問題を記載した Changes ファイル。

次の手順を実行して、Web サーバーに Dispatcher を追加します。

  1. 次の Dispatcher ファイルを、Web サーバーの plugin ディレクトリに配置します。

Sun Java System Web Server/iPlanet - Dispatcher 用の設定 sun-java-system-web-server-iplanet-configure-for-the-dispatcher

Web サーバーは、obj.conf を使用して設定する必要があります。Dispatcher インストールキットには、obj.conf.disp というサンプルの設定ファイルがあります。

  1. <WEBSERVER_ROOT>/config に移動します。

  2. obj.conf を開いて編集します。

  3. 次で始まる行をコピーします。
    Service fn="dispService"
    obj.conf.disp から obj.conf の初期化セクションにコピーします。

  4. 変更内容を保存します。

  5. magnus.conf を開いて編集します。

  6. 次のように始まる 2 つの行をコピーします。
    Init funcs="dispService, dispInit"
    および
    Init fn="dispInit"
    obj.conf.disp から magnus.conf の初期化セクションにコピーします。

  7. 変更内容を保存します。

NOTE
以下の設定は 1 行で記述し、$(SERVER_ROOT) および $(PRODUCT_SUBDIR) は対応する値に置き換える必要があります。

Init

次の表に、使用例を示します。実際のエントリは、使用する Web サーバーによって異なります。

Windows および UNIX

...
Init funcs="dispService,dispInit" fn="load-modules" shlib="$(SERVER\_ROOT)/plugins/dispatcher.so"
Init fn="dispInit" config="$(PRODUCT\_SUBDIR)/dispatcher.any" loglevel="1" logfile="$(PRODUCT\_SUBDIR)/logs/dispatcher.log"
keepalivetimeout="60"
...

各パラメーターの意味は次のとおりです。

パラメーター
説明
config
設定ファイル dispatcher.any. の場所と名前。
logfile
ログファイルの場所と名前。
loglevel
ログファイルにメッセージを書き込む際のログレベル:
0 - エラー
1 - 警告
2 - 情報
3 - デバッグ
メモ:インストール時およびテスト時はログレベルを 3 に設定し、実稼動環境で実行する場合は 0 に設定することをお勧めします。
keepalivetimeout
キープアライブタイムアウトを秒単位で指定します。Dispatcher バージョン 4.2.0 以降では、デフォルトのキープアライブ値は 60 です。値 0 はキープアライブを無効にします。

要件に応じて、Dispatcher をオブジェクトのサービスとして定義できます。Web サイト全体で Dispacher によってデフォルトのオブジェクトを変更できるよう設定するには、次のように指定します。

Windows

...
NameTrans fn="document-root" root="$(PRODUCT\_SUBDIR)\\dispcache"
...
Service fn="dispService" method="(GET|HEAD|POST)" type="\*\\\*"
...

UNIX

...
NameTrans fn="document-root" root="$(PRODUCT\_SUBDIR)/dispcache"
...
Service fn="dispService" method="(GET|HEAD|POST)" type="\*/\*"
...

次の手順 next-steps-2

Dispatcher の使用を始める前に、次の作業を実行する必要があります。

recommendation-more-help
ce382601-480f-4a99-8be7-73178d4b6ef5