コンソールウィンドウを開きます。
- ColdFusion のインストールと設定ユーザーガイド
- ColdFusion のインストール
- ColdFusion サーバープロファイル
- ColdFusion のインストール
- システムの設定
- ColdFusion のライセンスとアクティベーション
- ColdFusion 設定のインストール
- ColdFusion のサイレントインストール
- 統合テクノロジのインストール
- ColdFusion を設定するには
Adobe ColdFusion をビルトイン web サーバーおよび Apache や IIS などの外部 web サーバーに接続できます。
ColdFusion の web サーバーについて
Web サーバーは ColdFusion 環境における重要なコンポーネントであり、ColdFusion と web サーバー間の通信の仕組みを理解することは、サイトの管理に役立ちます。ColdFusion には、web サーバーに関する次のようなオプションがあります。
- ビルトイン web サーバー Coyote は、web サーバーまたはアプリケーションコンテナで HTTP 1.1 プロトコルをサポートする Tomcat の HTTP Connector コンポーネントです。Coyote は、サーバーの特定の TCP ポートで受信接続をリスンし、リクエストを Tomcat エンジンに転送します。Tomcat エンジンは、リクエストを処理し、応答をリクエスト元のクライアントに返送します。詳しくは、ビルトイン web サーバーの使用を参照してください。
- 外部 web サーバー カスタマイズされた web サーバーコネクタモジュールです。ColdFusion ページに対するリクエストを外部 web サーバーから ColdFusion に転送します。詳しくは、外部 web サーバーの使用を参照してください。
ビルトイン web サーバーの使用
ColdFusion サーバーの設定は Tomcat 上に作成されており、ビルトイン web サーバーとも呼ばれます。ビルトイン web サーバーは次の場合に便利です。
- 共存/移行 ビルトイン web サーバーを使用すると、既存のアプリケーションを ColdFusion に移行する間、以前のバージョンの ColdFusion(外部 web サーバーを使用)と ColdFusion(ビルトイン web サーバーを使用)を同一コンピューター上で実行できます。
開発 ワークステーションで ColdFusion を実行していて外部 web サーバーを実行していない場合、ビルトイン web サーバーを使用してローカルで ColdFusion アプリケーションを開発およびテストできます。すべての web サーバーは TCP/IP ポートをリスンしており、URL にそのポートを指定できます。デフォルトでは、web サーバーはポート 80 で HTTP リクエストをリスンします(例えば、http://www.adobe.com と http://www.adobe.com:80 は同じです)。同様に、ポート 443 は https リクエストのデフォルトポートです。サーバー設定のデフォルトでは、ビルトイン web サーバーは、ポート 8500 をリスンしています。例えば、ビルトイン web サーバーを使用して ColdFusion Administrator にアクセスするには、http://_servername_:8500/CFIDE/administrator/index.cfm を指定します。
上で説明した 2 つの場合(以前のバージョンの ColdFusion と並存させる場合、およびコンピュータに web サーバーが存在しない場合)以外は、できる限り ColdFusion インストール時に外部 web サーバーを使用するように設定してください。ビルトイン web サーバーを選択してしまった場合、インストール後に外部 web サーバーを設定するには、手動で web サーバー設定ツールを実行します。Web サーバー設定ツールについては、Web サーバーの設定を参照してください。インストールプロセス中にビルトイン web サーバーを有効にし、そのポートが既に使用されている場合、インストーラーは使用可能な次のポートを自動的に見つけ、そのポートを使用するようにビルトイン web サーバーを設定します。ビルトイン web サーバーで使用されているポート番号を調べるには、テキストエディターで cf_root/runtime/conf/server.xml ファイルを開き、コネクタの port 属性を確認します。例えば、<Connector port="8504" protocol="org.apache.coyote.http11.Http11Protocol> などです。ビルトイン web サーバーを使用する場合は、次の点に留意してください。
- ビルトイン web サーバーを使用する際のデフォルト web ルートは cf_root/cfusion/wwwroot(サーバー設定)です。デフォルトでは、ColdFusion Administrator(CFIDE ディレクトリ)はこの web ルートの下にあります。
ビルトイン web サーバーで別の web ルートディレクトリのページを処理する場合は、cf_root/cfusion/runtime/conf/server.xml ファイルに仮想マッピングを定義します。「To add virtual directory」という文字列を検索します。下の context path というエントリのコメントを解除します。仮想ディレクトリを追加するには、次に示す aliases 属性を追加します。
<Context path="/" docBase="<absolute_path_to_CF_install_directory>¥wwwroot" WorkDir="<cf_home>¥runtime¥conf¥Catalina¥localhost¥tmp" aliases="/path1=<absolute_path_to_directory1>,/path2=<absolute_path_to_directory2>"></Context>
外部 web サーバーのルートに CFML ページがある場合は、外部 web サーバーを使用して CFML ページを配信するように ColdFusion が設定されていることを確認してください。ColdFusion が外部 web サーバーを使用するように設定しなかった場合、外部 web サーバーは web ルートに保存されている ColdFusion ページの CFML(ColdFusion Markup Language)ソースコードを配信します。
外部 web サーバーの使用
ColdFusion は、Tomcat web サーバーコネクタを使用して、外部 web サーバーからのリクエストを ColdFusion ランタイムシステムに転送します。
CFM ページに対するリクエストがあると、web サーバーのコネクタが Tomcat プロキシサービスへの接続を開きます。ColdFusion ランタイムシステムはリクエストを処理し、プロキシサービスとコネクタを使用してレスポンスを返します。Web サーバーコネクタは、次の表に示すように、web サーバー固有のプラグインモジュールを使用します。
Web サーバー |
コネクタの詳細 |
---|---|
Apache |
Web サーバー設定ツールは、Apache の httpd.conf ファイルに次の要素を追加します。
|
IIS |
Web サーバー設定ツールは、グローバルレベル(デフォルト)または web サイトレベルのいずれかで、次の要素を追加します。
|
IIS で「すべてのサイト」オプションでコネクタが設定された後に新しいサイトを追加する場合、コネクタを再設定する必要があります。
Web サーバーの設定
ColdFusion では、web サーバー設定ツールを使用して、ColdFusion に接続するためにコネクタが必要とするモジュールと設定を外部 web サーバーに設定します。Web サーバー設定ツールは、コマンドラインインターフェイスまたは GUI(グラフィカルユーザーインターフェイス)モードのどちらでも実行できます。いずれの場合も、web サーバー設定ツールを実行すると、ColdFusion サーバーとの間で通信を行えるように外部 web サーバーが設定されます。
GUI モードの使用
Web サーバー設定ツールには GUI モードがあります。このモードでは、グラフィカルインターフェイスを使用して外部 web サーバー設定を指定できます。
Web サーバー設定ツールを GUI モードで使用する場合は、「ColdFusion アプリケーションの Web サーバーの設定」チェックボックスを選択します。
GUI モードによる web サーバー設定ツールの実行
-
注意:
Windows で web サーバー設定ツールを起動するには、スタート/プログラム/Adobe/ColdFusion 2016/Web サーバー設定ツールを選択します。
-
cf_root/cfusion/runtime/bin に移動します。
-
wsconfig.exe(Windows)コマンドまたは wsconfig(UNIX)コマンドを使用して、web サーバー設定ツールを起動します。Web サーバー設定ツールウィンドウが表示されます。
-
「追加」をクリックします。
-
「ColdFusion アプリケーションの Web サーバーの設定」を選択します。
-
アプリケーションサーバーホストとアプリケーションサーバークラスタを提供します。
注意:サーバーまたはクラスタは、web サーバーコンピュータ上に存在している必要はありません。この場合、リモートコンピューターの IP アドレスまたはサーバー名を入力します。
-
「Web サーバーの属性」領域で、web サーバー固有の情報を入力して「OK」をクリックします。
-
(オプション)web サーバーコネクタでは、ビルトイン web サーバーのルートディレクトリからスタティックコンテンツ(HTML ファイルや画像など)を配信することはできません。ColdFusion web アプリケーションのコンテキストルートが空 の場合、ビルトイン web サーバーのルートディレクトリからページを配信するには、ビルトイン web サーバーの下の対応するディレクトリに web サーバーマッピングを作成します。
コマンドラインインターフェイスの使用
-
コンソールウィンドウを開きます。
-
cf_root/runtime/bin(サーバー設定)ディレクトリに移動します。
-
次のようにして、wsconfig.exe(Windows)コマンドまたは wsconfig(UNIX)コマンドを実行します。
wsconfig.exe [-options]
./wsconfig [-options]
次の表にオプションを示します。
オプション
説明
-ws
次のように、web サーバーを指定します。
- IIS
- Apache
{{-dir }}
設定ディレクトリへのパスを指定します。
-site
IIS の web サイト名を指定します(大文字と小文字が区別されます)。All または 0 を指定すると、コネクタをグローバルに設定できます。この設定はすべての IIS web サイトに適用されます。
{{-host }}
ColdFusion サーバーアドレスを指定します。デフォルト値は localhost です。
-norestart
Web サーバーを再起動しないよう指定します。
-cluster
Tomcat クラスタ名を指定します。このオプションを使用して、単一サーバーではなく Tomcat クラスタへの接続を定義できます。
-l
コネクタの verbose ロギングを有効化します。
-upgrade
既存の設定済みコネクタを、新しい wsconfig.jar ファイルの新しいモジュールでアップグレードします。
-service
Apache Windows サービス名を指定します。デフォルト値は Apache です。
-bin
Apache サーバーのバイナリファイル(Windows では apache.exe、UNIX では httpd)のパスを指定します。
-script
Apache UNIX コントロールスクリプトファイル(apachectl)のパスを指定します(Apache 派生製品の Stronghold などではファイルが若干異なる場合があります)。
-v
Web サーバー設定ツールからの verbose 出力を有効にします。
-list
設定されたすべての web サーバーをリストします。
-list -host server-host
指定されたホストのすべての Tomcat サーバーをリストします。
-remove
設定を削除します。ws オプションと、dir または site オプションが必要です。
-uninstall
設定済みコネクタをすべて削除します。
{{-h }}
すべてのパラメータをリストします。
バッチファイルとシェルスクリプトの使用
ColdFusion サーバー設定には、コマンドラインでの一般的なコネクタ設定を実装するバッチファイルとシェルスクリプトが含まれています。それらのファイルは、cf_root/bin/connectors ディレクトリにあります。例えば、IIS_connector.bat ファイルでは、IIS のすべてのサイトを 0 に設定することでグローバルに定義されたコネクタを確立し、そのフィルタとマッピングがすべてのサイトに継承されるようにします。
コマンドラインインターフェイスの例
特定の IIS サイトを設定します。
cf_root/runtime/bin/wsconfig.exe -ws iis -site "web31" -v
すべてのサイトで ColdFusion を実行するシステムでは、通常は個々のサイトを設定する必要はありません。
すべての既存 IIS サイト(ISP)を設定します。
cf_root/runtime/bin/wsconfig.exe -ws iis -site 0 -v
1 台目の UNIX 上の Apache を設定します。
cf_root/runtime/bin/wsconfig -ws Apache -bin /opt/apache2/bin/httpd -script /opt/apache2/bin/apachectl -dir /opt/apache2/conf -v
2 台目の UNIX 上の Apache を設定します。
cf_root/runtime/bin/wsconfig -ws Apache-bin /usr/bin/httpd -script /usr/bin/httpd -dir /etc/httpd/conf -coldfusion -v
Windows 上の Apache を設定します。
cf_root/runtime/bin/wsconfig.exe -ws apache -dir "c:¥program files¥apache group¥apache2¥conf" -coldfusion -v
設定ファイル
Web サーバー設定ツールを実行するたびに、設定ファイルおよびディレクトリが作成されます。例えば、サーバー設定の場合、最初の実行時には cf_root/config/wsconfig/1 の下にファイルが作成され、2 回目には cf_root/config/wsconfig/2 の下に作成されます。以降の実行時も同様です。作成されたサブディレクトリには、それぞれ、プラットフォーム固有のコネクタモジュールと web サーバー固有のサポートファイルが格納されています。
コネクタファイルのバックアップ
コネクタの設定を解除または再設定する場合、WS Config ではコネクタファイルをバックアップします。これにより、バックアップしたファイルと新しいコネクタファイルを比較し、必要なカスタマイズをやり直すことができます。
コネクタディレクトリ以下にあるすべてのファイル(../ColdFusion/config/wsconfig/magicnumber)が、同じコネクタ用に使用できるバックアップディレクトリの数に応じて、magicnumber.1 または magicnumber.2 といった名前のディレクトリ内にバックアップされます。これらのディレクトリは、バックアップディレクトリ(../ColdFusion/config/wsconfig/backup)内にあります。例えば、../wsconfig/2/ 以下に設定されているコネクタの設定を解除しようとする場合、そのコネクタのファイルは ../wsconfig/backup/2.1 内にバックアップされます。 コネクタの設定を解除するのが 2 回目の場合、./wsconfig/backup/2.1 は既に作成されています。この場合、ファイルは ../wsconfig/backup/2.2 内に保存されます。
Apache コネクタの場合、Apache conf ディレクトリに内にある mod_jk.conf も、../wsconfig/backup/2.2 ディレクトリ内にバックアップされます。また、コマンドラインから設定を解除している場合、コネクタはデフォルトでバックアップされますが、WS Config の UI ツールを使用している場合は、コネクタの設定を解除する前にバックアップを受け入れるか拒否するかを選択することができます。これは、すべてのコネクタおよびサポートされるすべてのプラットフォームについて有効です。
サンプル設定ファイル
Web サーバー設定ファイルのパラメータをわかりやすく説明するため、コネクタ固有の web サーバープロパティの例を次に示します。ここで説明する例では、Tomcat と web サーバーは同一コンピューター上で実行されているものと想定します。
Apache の設定ファイル
Apache 2.0 web サーバーと同じマシンに ColdFusion をインストールする場合の一般的な httpd.conf ファイルを次に示します。httpd.conf ファイルには、次のエントリが含まれています。
Include "Apache_install¥Apache Software Foundation¥Apache2.2¥conf¥mod_jk.conf"
mod_jk.conf ファイルには次が含まれています。
# # Load mod_jk module LoadModule jk_module "CF_install\config\wsconfig\1\mod_jk.so" # Where to find workers.properties JkWorkersFile "CF_install\config\wsconfig\1\workers.properties" JkMountFile "CF_install\config\wsconfig\1\uriworkermap.properties" # Where to put jk logs JkLogFile "CF_install\config\wsconfig\1\mod_jk.log" # Where to put jk shared memory JkShmFile "CF_install\config\wsconfig\1\jk_shm" # Set the jk log level [debug/error/info] JkLogLevel info # Select the timestamp log format JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " AddHandler jakarta-servlet .cfm .cfml .cfc .cfr .cfswf Alias /CFIDE "CF_install\cfusion\wwwroot\CFIDE" <Directory "CF_install\cfusion\wwwroot\CFIDE"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> <Files ~ ".hbmxml$"> Order allow,deny Deny from all </Files>
マルチホーム
同一コンピュータ上で実行する web サーバーと ColdFusion サーバーとの接続を設定するには、通常は web サーバー設定ツールを使用します。しかし、web サーバーコネクタを使用して、複数の仮想サイトへのリクエストを 1 つの ColdFusion サーバーに転送することができます。この手法は「マルチホーム」と呼ばれています。
マルチホーム環境では、複数の仮想ホスト(仮想サイトとも呼ばれます)を 1 つの ColdFusion サーバーに接続します。そのような仮想ホストは、個別のアプリケーション用(例えば、人事管理用、給与処理用、マーケティング用など)として使用することや、ホスティング環境で個別のユーザー用に使用することができます。
マルチホームを設定するタスクには次の作業が含まれます。
- ColdFusion Administrator へのアクセスの有効化 仮想ホストに ColdFusion Administrator にアクセスする必要があるアプリケーションが 1 つでもある場合は、元の CFIDE ディレクトリを指す /CFIDE の web サーバーマッピング(Apache では Alias ディレクティブ)を作成します。または、CFIDE ディレクトリ全体をその仮想 web サイトにコピーします。
- cfform.js ファイルへのアクセスの有効化 /CFIDE の web サーバーマッピングを作成しない場合で、仮想ホストに cfform タグを使用するアプリケーションが 1 つでもある場合は、その仮想ホストから CFIDE/scripts ディレクトリ内の JavaScript ファイルを検索できるようにします。それらのスクリプトに対するアクセスを有効にするには、次のどちらかのオプションを使用します。
- original_web_root/CFIDE/scripts ディレクトリを仮想ホストの CFIDE/scripts ディレクトリにコピーします。
- すべての cfform タグを修正して、scriptsrc 属性で cfform.js ファイルの場所を指定するようにします。
- cacheRealPath 属性を無効にする ColdFusion が常に正しいサーバーからページを返すようにするには、ColdFusion Administrator のキャッシュ機能ページで「Web サーバーパスのキャッシュ」を無効にします。マルチホームを有効化するために実行する手順は、web サーバーの種類によって異なります。
IIS
IIS の場合は、IIS Administrator を実行して追加 web サイトを作成し、web サーバー設定ツールを実行します。ColdFusion ページは、各仮想 web サイトの web ルートの下に格納してください。
1 つの ColdFusion サーバーに対する IIS の複数の仮想サイトの接続
-
IIS Administrator を使用して、必要に応じて仮想 web サイトを作成します。Web のルートディレクトリは、読み込み、書き込み、および実行アクセスを有効にしてください。詳細については、IIS のドキュメントを参照してください。
-
IIS のドキュメントの説明に従って、各仮想 web サイトの DNS を設定します。
-
各仮想 web サイトをテストし、HTML ページが正しく配信されることを確認します。
-
次の手順に従って、web サーバー設定ツールを実行します。
- GUI - web サーバーに IIS を選択し、「IIS Web サイト」ドロップダウンリストで「すべて」を選択します。また、「ColdFusion アプリケーションの Web サーバーの設定」チェックボックスを選択します。
コマンドライン - 次のサーバー設定例のように、-site 0 オプションを指定します。
cf_root/runtime/bin/wsconfig.exe -ws iis -site 0 -v
-
各仮想 web サイトをテストし、ColdFusion ページが正しく配信されることを確認します。
Apache
Apache の場合は、apache_root/conf/httpd.conf ファイルを修正して仮想ホストを作成し、web サーバー設定ツールを実行します。ColdFusion ページは、各仮想 web サイトの web ルートの下に格納してください。
1 つの ColdFusion サーバーに対する web サーバー上の複数の Apache 仮想ホストの接続
-
Web サーバーのドキュメントの説明に従って、各仮想 web サイトの DNS を設定します。
-
テキストエディタで apache_root/conf/httpd.conf ファイルを開き、必要に応じて仮想ホストを作成します。詳細については、Apache のマニュアルを参照してください。次に例を示します。
... NameVirtualHost 127.0.0.1 <VirtualHost 127.0.0.1> ServerAdmin admin@yoursite.com DocumentRoot "C:/Program Files/Apache Group/Apache2/htdocs" ServerName SERVER02 ErrorLog logs/error.log </VirtualHost> <VirtualHost 127.0.0.1> ServerAdmin admin@yoursite.com DocumentRoot "C:/Program Files/Apache Group/Apache2/htdocs2" ServerName mystore ErrorLog logs/error-store.log </VirtualHost> <VirtualHost 127.0.0.1> ServerAdmin admin@yoursite.com DocumentRoot "C:/Program Files/Apache Group/Apache2/htdocs3" ServerName myemployee ErrorLog logs/error-employee.log </VirtualHost> ...
-
各仮想ホストをテストし、HTML ページが正しく配信されることを確認します。
-
次の手順に従って、web サーバー設定ツールを実行します。
- GUI - web サーバーに Apache を指定し、httpd.conf ファイルを含むディレクトリを指定して、「ColdFusion アプリケーションの Web サーバーの設定」チェックボックスを選択します。
コマンドライン - 次の例のように、-ws apache と、httpd.conf ファイルを含むディレクトリを指定します。
cf_root/runtime/bin/wsconfig.exe -ws apache
-dir "c:\program files\apache group\apache2\conf" -vUNIX の他のコマンドライン例については、コマンドラインインターフェイスの使用を参照してください。Web サーバー設定ツールによって httpd.conf ファイルが更新されます。サンプルについては、Apache を参照してください。
-
Apache を再起動します。各仮想ホストの ColdFusion ファイルは、DocumentRoot ディレクティブで指定されたディレクトリに格納してください。
-
各仮想ホストをテストし、ColdFusion ページが正しく配信されることを確認します。
Ubuntu の場合、バンドルされている Apache サーバーが ColdFusion で設定されます。CFFileServlet のリクエストおよびその他のサーブレットがマッピングするリクエストは失敗します。これは、ポート 80 で実行するデフォルトの Apache サーバーがデフォルトの仮想ホストを使用するためです。そのため、バンドルされた Apache サーバーのコネクタ設定には、追加の手順が必要です。mod_jk.conf にある uriworkermap.properties の JkMountFile エントリを /etc/apache2/sites-available/default にあるデフォルトの仮想ホスト設定に手動で追加する必要があります。
Apache 仮想ホストを使用した ColdFusion コネクタの設定
コネクタを設定するには:
個別:
- Windows の場合: wsconfig.exe -ws Apache -dir <path to apache conf> -vhost <vhost server name>
- Windows 以外の場合: ./wsconfig -ws Apache -dir <path to apache conf> -vhost <vhost server name>
All:
- Windows の場合: wsconfig.exe -ws Apache -dir <path to apache conf> -vhost All
- Windows 以外の場合: ./wsconfig -ws Apache -dir <path to apache conf> -vhost All
All-individually:
- Windows の場合: wsconfig.exe -ws Apache -dir <path to apache conf> -vhost All-individually
- Windows 以外の場合: ./wsconfig -ws Apache -dir <path to apache conf> -vhost All-individually
Apache 仮想ホストを使用した ColdFusion コネクタの設定(コミュニティビデオ)
ビデオにアクセスするには、このリンクをクリックしてください。