Adobe ColdFusion には、アプリケーションをパッケージ化してアーカイブファイルを作成できるように、アーカイブとデプロイの方法に関するオプションが用意されています。
アーカイブとデプロイのオプション
ColdFusion には、アーカイブとデプロイに関する次のオプションがあります。
- ColdFusion アーカイブファイル ColdFusion アプリケーションのページ、データソースおよび設定を、1 つの ColdFusion Archive(CAR)ファイルにパッケージ化することができます。詳細については、アプリケーションの CAR ファイルへのパッケージ化を参照してください。
- JEE アーカイブ ColdFusion アプリケーションを Enterprise Application Archive(EAR)または Web Application Archive(WAR)ファイルとしてパッケージ化すると、JEE アプリケーションサーバーに簡単にデプロイできます。詳細については、アプリケーションの JEE アーカイブファイルへのパッケージ化を参照してください。
- Cfcompile ユーティリティ cfcompile ユーティリティを使用すると、アプリケーションの ColdFusion ページを Java クラスファイルにプリコンパイルできます。また、ColdFusion ページをコンパイルしてバイトコードに変換し、拡張子 CFM、CFC または CFR が付いたファイルにそのバイトコードを保存することもできます。詳細については、 cfcompile ユーティリティの使用を参照してください。
アプリケーションの CAR ファイルへのパッケージ化
CAR ファイルでは、Web サイトの設定情報、ファイル、およびアプリケーションをアーカイブしてデプロイできます。この機能を使用して、Web サイトアプリケーションを別の場所にデプロイすることや、ファイルを簡単にすばやくバックアップすることができます。CAR ファイルの管理は、ColdFusion Administrator のパッケージとデプロイ/ColdFusion アーカイブの領域で行えます。
注意:CAR ファイルのアーカイブとデプロイは、EAR および WAR ファイルを使用する JEE のアーカイブやパッケージとは異なります。 |
サイト情報をアーカイブおよびデプロイするには、次の手順を実行します。
- アーカイブ定義を作成します。サイトについてアーカイブする情報の種類を特定します。サイトに関するほぼすべての種類の情報をアーカイブできます(ディレクトリ、ファイル、CFX タグ、ColdFusion マッピング、Solr コレクション、自動化タスク、サーバー設定など)。作成する個々のアーカイブ定義にはそれぞれ名前が割り当てられます。この名前は、アーカイブの内容を構築またはデプロイするたびに使用されます。
- アーカイブを構築します。アーカイブ定義の名前を選択し、CAR ファイルの格納場所を指定します。
アーカイブをデプロイします 。 CAR ファイルの場所と、その内容を復元する場所を指定します。
注意:ColdFusion で Administrator および RDS のパスワードをデプロイすることはできません。また、以前のバージョンの ColdFusion で作成したアーカイブを展開することはできません。 |
CAR ファイルの作成、構築およびデプロイの詳細については、ColdFusion Administrator のオンラインヘルプを参照してください。
データソースに以下のドライバーが付属する場合、ご使用の datasource 設定を CAR ファイルにパッケージ化するときには以下に注意してください。
- MS Access、
- Unicode 付き MS Access、および
- Derby
またはディレクトリパスを参照する他のすべてのデータソース。CAR のデプロイはこれらにディレクトリ変換を示しません。
これを修正するには、以下を実行します。
Administrator に移動してデータソースを編集するか、AdminAPI を使用してこれらのデータソースを編集します。
または
CAR ファイルをバックアップし、それをアーカイブ解除してから、server_setting.xml ファイルを開きます。
server_setting.xml では、ディレクトリパスを要求されたデータソース用に変更します。
ColdFusion(2016 リリース)にアップデート 2 を適用した後に移行されない設定
ColdFusion(2016 リリース)にホットフィックス 2 を適用した後に、一部の設定が移行されません。
CAR 作成時および CAR のデプロイ時に、「アーカイブの要約」ページ(「移行されない設定」セクション)で一覧を表示できます。
それらは、以下の設定です。
- データとサービス/データソース/デフォルトのデータソース
- デバッグとロギング/デバッグ出力の設定/コネクタポート
- 拡張機能/CORBA コネクタ/登録された CORBA コネクタ
- セキュリティ/RDS/RDS サービスの有効化
- セキュリティ/サンドボックスセキュリティ/ColdFusion サンドボックスセキュリティの有効化
- セキュリティ/セキュアプロファイル/セキュアプロファイルを有効にする
- サーバーの設定/設定/デフォルト ScriptSrc ディレクトリ
- サーバーの設定/フォント管理/ユーザー定義のフォント
- サーバーの設定/マッピング/アクティブな ColdFusion マッピング//CFIDE
- サーバーの設定/メール/パスワード
- サーバーの設定/メール/キーストアパスワード
- サーバーの設定/メール/キーパスワード
アプリケーションの JEE アーカイブファイルへのパッケージ化
ColdFusion を JEE 設定で実行している場合、ColdFusion アプリケーションを JEE アプリケーションサーバー上にデプロイするには 、 EAR(Enterprise Application Archive)形式または WAR(Web Application Archive)形式を使用します。これにより、リソース(データソースなど)が設定され、CFM、CFC、および CFR ファイルが Web アプリケーションルートまたは Web サーバールートに格納されて、ColdFusion アプリケーションが作成されます。ColdFusion の以前のリリースでは、ColdFusion アプリケーションを本番環境の JEE サーバーにデプロイする際、これらの手順を JEE 管理者が繰り返して実行する必要がありました。
エンタープライズアプリケーションを含んだ EAR または WAR ファイルは、ColdFusion Administrator で作成できます。このアーカイブファイルの中には、ColdFusion Web アプリケーション、ColdFusion 用の設定 (データソース定義など)、および、アプリケーションで使用する CFM、CFC、CFR ファイルが含まれます。
アプリケーションのパッケージ化
JEE アーカイブ機能を使用すると、JEE 管理者による ColdFusion アプリケーションのデプロイに使用できるアーカイブファイルをすばやく作成できます。
新しいアーカイブ定義の追加とアーカイブファイルの作成
- ColdFusion Administrator を開きます。
- 「アーカイブ名」フィールドで、アーカイブファイルに付ける一意の名前を指定します (拡張子なし)。
- 「追加」をクリックします。「新規アーカイブの追加」画面が表示されます。
- 「新規アーカイブの追加」画面でアーカイブ設定を指定します。
- 「作成」をクリックします。指定のアプリケーション配布ディレクトリ内に EAR または WAR ファイルが作成されます。
次の表で、アーカイブの作成または変更時に使用する設定項目について説明します。
設定 |
説明 |
---|---|
アーカイブタイプ |
EAR または WAR を選択します。 |
コンテキストルート (EAR のみ) |
サーバー上で実行する各 JEE Web アプリケーションは 、 それぞれに固有の、コンテキストルート(コンテキストパス)と呼ばれるベース URL を持ちます。JEE アプリケーションサーバーは、URL の最初の部分(http://hostname の部分の直後)を使用して、受信要求する Web アプリケーションサービスを決定します。例えば、 cfmx のコンテキストルートで ColdFusion を実行している場合は、次の URL を使用して Administrator を表示します。 http://_hostname_/cfmx/CFIDE/administrator/index.cfmほとんどの JEE アプリケーションサーバーでは、各サーバーインスタンスのアプリケーションのコンテキストルートとして スラッシュ を 使用できます。コンテキストルートとして / を使用する場合、RDS(Remote Development Services)Web アプリケーションは必要ありません。 |
シリアル番号 |
ColdFusion エンタープライズ版のシリアル番号を指定します。アーカイブファイル作成時に ColdFusion エンタープライズ版の有効なシリアル番号を指定しないと、そのファイルはエンタープライズ版の評価バージョンとしてデプロイされるため、30 日が経過するとデベロッパー版に戻ります。 |
COM サポートを含める |
アプリケーションで COM サポートを使用しない場合は、サポートファイルを除外することでアーカイブファイルのサイズを小さくできます。 |
デバッグ |
現在の ColdFusion サーバーがデバッグを有効化した状態で動作している場合に、アーカイブファイルに含まれるアプリケーションのデバッグを無効化できます。 |
CFML ソースを含める |
CFML ソースコードをデプロイせず、代わりに Java バイトコードをデプロイすることもできます。詳細については、ソースレス配布を参照してください。 |
ColdFusion Administrator |
ColdFusion Administrator を使用してアプリケーションを変更する必要がない場合は、Administrator のファイルを除外することでアーカイブファイルを小さくして、セキュリティ問題も軽減できます。 |
データソース |
アーカイブファイルに含めるデータソース定義。 |
デプロイに関する注意事項
アーカイブファイルを作成した後は、ColdFusion JEE 設定でのデプロイに関する標準的なテクニックを使用してデプロイします。詳細については、ColdFusion のインストールの JEE 設定のインストールで「EAR ファイルまたは WAR ファイルのインストール」を参照してください。
デプロイ後の注意事項
アプリケーション、使用するリソースおよびデプロイ先の環境によっては、デプロイ後に次のような設定が必要となる場合があります。
- マッピング アーカイブされたアプリケーションの ColdFusion マッピングは、元のコンピューター上にあった各種ディレクトリを指しています。それらのディレクトリがデプロイ先のコンピューターに存在しない場合は、ColdFusion Administrator または Administrator API を使用して ColdFusion マッピングを変更します。
- シリアル番号 JEE デプロイは ColdFusion エンタープライズ版の機能です。エンタープライズ版にアップグレードする場合は、ColdFusion Administrator または Administrator API を使用してシリアル番号を入力します 。 Administrator API の詳細については、Administrator API を参照してください。
デプロイに関する注意事項
アーカイブファイルを作成した後は、ColdFusion JEE 設定でのデプロイに関する標準的なテクニックを使用してデプロイします。詳細については、ColdFusion のインストールの JEE 設定のインストールで「EAR ファイルまたは WAR ファイルのインストール」を参照してください。
cfcompile ユーティリティの使用
次の用途で cfcompile ユーティリティを使用できます。
- ColdFusion ページのプリコンパイル アプリケーションの CFM ページを Java クラスファイルにプリコンパイルします。これを行うと、ランタイムに ColdFusion で CFM ページをコンパイルする必要がなくなります。
- ソースレス配布 Java バイトコードの CFM ページを作成します。これらの CFM ページは、CFML ソースコードの代わりにデプロイできます。cfcompile ユーティリティは、 cf_root/bin ディレクトリ(サーバー設定の場合)または cf_webapp_root/WEB-INF/ cfusion /bin ディレクトリ(JEE 設定の場合)にあります。JEE 設定で cfcompile ユーティリティを使用するには、その前に cfcompile.sh/cfcompile.bat ファイルで CFUSION_HOME、JEEJAR および WEBINF 変数を設定する必要があります。
ColdFusion ページのプリコンパイル
cfcompile ユーティリティを使用すると、ColdFusion ページ(CFM、CFC、CFR ファイル)をプリコンパイルできます。プリコンパイルすると、ランタイムにおいてページの初期ロード時間が高速化されます。
ColdFusion ページを Java クラスにコンパイルするには、次のコマンドを使用します。
cfcompile webroot [directory-to-compile] |
次の表で、各パラメータについて説明します。
パラメータ |
説明 |
---|---|
webroot |
Web サーバールートの完全修飾パスです(例:C:¥Inetpub¥wwwroot または C:¥coldfusion10¥cfusion¥wwwroot)。 |
directory-to-compile |
コンパイルする対象のファイルが置かれているディレクトリの完全修飾パスです。このディレクトリは、Web ルートディレクトリの下位である必要があります。指定しない場合は、Web ルートディレクトリ内にある ColdFusion テンプレートがすべてコンパイルされます。 |
ソースレス配布
cfcompile ユーティリティに deploy オプションを指定することで、Java バイトコードを含んだ ColdFusion ページ(CFM、CFC、CFR ファイル)を作成できます。作成したバイトコード版の ColdFusion ページは、元の CFML ソースコードの代わりにデプロイできます。
CFML ファイルをコンパイルして、CFML ソースコードの代わりにデプロイできるバイトコード形式に変換するには、次のコマンドラインを使用します。
cfcompile -deploy webroot directory-to-compile output-directory |
次の表で、各パラメータについて説明します。
パラメータ |
説明 |
---|---|
webroot |
Web サーバールートの完全修飾パスです(例:C:¥Inetpub¥wwwroot または C:¥coldfusion10¥cfusion¥wwwroot)。 |
directory-to-compile |
コンパイルする対象のファイルが置かれているディレクトリの完全修飾パスです。このディレクトリは、Web ルートディレクトリの下位である必要があります。deploy オプションを使用する場合、このパスの指定は必須です。 |
output-directory |
コンパイルによって作成されるデプロイ可能ファイルを格納するディレクトリの完全修飾パスです。ソースファイルのディレクトリと同じ場所を指定することはできません。 |
cfcompile ユーティリティを 実行した後は、次の手順を実行します。
- 元の CFML ファイルをバックアップします。
- 生成したバイトコード CFML ファイルを元のディレクトリへとコピーします。
アプリケーションをデプロイします。
注意:アプリケーションのバイトコード版 CFML ファイルを含んだ EAR または WAR ファイルは、ColdFusion Administrator の JEE アーカイブ画面で作成できます。