5.9.1 ドメイン名指定でのトップページの表示について
ドメイン名だけでトップページを表示させるには,welcomeファイルをルートコンテキストに配置する必要があります。ルートコンテキストとは,コンテキストルート※が空文字(コンテキストルートに名称が指定されていない)のコンテキストです。
- 注※
-
Webアプリケーションをまとめた管理単位を,コンテキストといいます。このコンテキストのルートパスをコンテキストルートといいます。Webアプリケーションにアクセスするときは,コンテキストルートをURL上に指定します。
コンテキストとコンテキストルートについて,次の図に示します。
図5‒23 コンテキストとコンテキストルート
ドメイン名だけでトップページを表示させるには,次の設定が必要になります。
-
リダイレクタの設定
ルートコンテキストには,Webサーバ経由でアクセスします。このため,リダイレクタのURLマッピング定義で,該当するURLがリダイレクトされるように設定する必要があります。mod_jk.conf(HTTP Serverの場合)またはuriworkermap.properties(Microsoft IISの場合)に設定します。
-
アプリケーションの設定
インポートしたJ2EEアプリケーションのコンテキストルートに空文字を指定します。
- 〈この項の構成〉
(1) 注意事項
ドメイン名指定でのトップページの表示機能を使用する上での注意事項を次に示します。
-
コンテキストルートとルートコンテキストが同じ階層を持つ場合にアクセスされる階層
コンテキストルートとルートコンテキストが同じ階層を持つ場合,コンテキストルートの階層にアクセスされます。例を次に示します。
- 例
-
WebアプリケーションAがコンテキストルートexampleを持ち,WebアプリケーションBのコンテキストルートが空文字で,両方のWebアプリケーション内に「example」という階層を持つ場合の例を説明します。
図5‒24 コンテキストルートとルートコンテキストが同じ階層を持つ場合にアクセスされる階層を持つ例 この場合,「http://<ホスト名>/example」にアクセスすると,コンテキストルートを持つ,WebアプリケーションAのexample/index.jspが実行されます。
ただし,ディレクトリ内に,forwardやincludeがある場合で,例えばディレクトリ内のforwardにアクセスすると,ルートコンテキストのindex.jspにforwardされます。
-
Webアプリケーション内の構成
URLの先頭に「ejb」や「web」を使用することはできません。
- 使用できない例
-
http://<ホスト名>:<ポート番号>/ejb/
http://<ホスト名>:<ポート番号>/web/
このため,ルートコンテキストとしてデプロイするWebアプリケーションでは,「ejb」または「web」が先頭になるような構成にしないでください。
-
メッセージ本文での表示方法
コンソールやログファイルに出力されるメッセージでは,コンテキストルートは空文字で表示されます。