外部 Web サーバーの使用

ColdFusion は、Tomcat Web サーバーコネクタを使用して、外部 Web サーバーからのリクエストを ColdFusion ランタイムシステムに転送します。

CFM ページに対するリクエストがあると、Web サーバーのコネクタが Tomcat プロキシサービスへの接続を開きます。 ColdFusion ランタイムシステムはリクエストを処理し、プロキシサービスとコネクタを使用してレスポンスを返します。Web サーバーコネクタは、次の表に示すように、Web サーバー固有のプラグインモジュールを使用します。

Web サーバー

コネクタの詳細

Apache

Web サーバー設定ツールは、Apache の "httpd.conf" ファイルに次の要素を追加します。

  • LoadModule ディレクティブはコネクタを定義します。

  • AddHandler ディレクティブは、ColdFusion ページに対するリクエストをコネクタを使用して転送するよう Apache に指示します。

Apache 2.x の場合、接続モジュールは mod_jk.so です。

IIS

Web サーバー設定ツールは、グローバルレベル (デフォルト) または Web サイトレベルのいずれかで、次の要素を追加します。

  • コネクタ関連のすべてのファイルを格納する1 というフォルダーを cf_root¥config¥wsconfig に作成します。

  • cf_root¥config¥wsconfig(IIS 内)に Jakarta という仮想ディレクトリを作成します。

  • tomcat というエントリを ISAPI FILTERS の下に追加します。 これは、cf_root¥config¥wsconfig¥1¥ isapi_redirect.dll を指します。

  • tomcat というエントリを cf_root¥config¥wsconfig¥1¥isapi_redirect.dllallowed という権限で ISAPI および CGI の制限の下に追加します。 これは、IIS マネージャーのグローバルサイトの場合に当てはまります。

  • cfcHandlercfmHandlercfmlHandlercfrHandler および cfswfHandler という isapi ハンドラーを追加します。

  • デバッグの問題の場合は、cf_roots¥config¥wsconfig¥1¥ ディレクトリにある isapi_redirect.properties ファイルのログレベルを debug に設定します。

  • Web サーバーのバッファーを無効にするには、cf_root¥config¥wsconfig¥1¥isapi_redirect.properties ファイルの is_buffer_enablefalse に変更します。 これは、cfflush を IIS コネクタ上で機能させる場合に行います。 アプリケーションで cfflush を使用しない場合は、これを true に設定します。 こうすると、パフォーマンスが向上する場合があります。

Sun ONE Web Server

Web サーバー設定ツールは、Sun ONE Web Server の設定ファイルに次の要素を追加します。

  • コネクタ関連のすべてのファイルが格納される 1 というフォルダーが ColdFusion10¥config¥wsconfig フォルダーに作成されます。

  • Sun ONE の magnus.conf ファイルに次のエントリが追加されます。 デバッグの場合は、ログレベルを debug に変更します。

    Init fn="load-modules" shlib="C:/ColdFusion10/config/wsconfig/2/nsapi_redirect.dll" funcs="jk_init,jk_service" 
    Init fn="jk_init" worker_file="cf_root/config/wsconfig/2/workers.properties" log_level="info" log_file="cf_root/config/wsconfig/2/nsapi.log" shm_file="cf_root/config/wsconfig/2/jk_shm"
  • Sun ONE の obj.conf ファイルにすべての拡張子のエントリが追加されます。 次に例を示します。

    NameTrans fn="assign-name" from="/*.cfc/*" name="jknsapi" 
    NameTrans fn="assign-name" from="/*.cfc" name="jknsapi" 
    NameTrans fn="assign-name" from="/*.cfml" name="jknsapi" 
    <Object name="jknsapi"> 
    Service fn="jk_service" method="*" worker="server1" 
    </Object>