Tomcatにおけるserver.xmlの配置及びConteextの配置について直接引用する工事
server.xmlプロファイル
以下はこのファイルの基本的な構成情報で、より具体的な構成情報はtomcatの文書を参照してください。
server:
ポーター ポートを指定してください。このポートはtomcatを閉じる要求を監督します。
shutdown ポートに送信するコマンド文字列を指定します。
サービス:
name serviceの名前を指定します。
Connector (クライアントとサービスの間の接続を表します。)
ポーター サーバー側で作成するポート番号を指定し、この切断口でクライアントからの要求を傍受します。
ミニプロセッション サーバー起動時に作成した処理要求のスレッド数
maxProcessors 最大作成可能な処理要求のスレッド数
enaboleLook up trueであれば、request.getRemoteHost()を呼び出してDNSクエリを行うことによって、リモートクライアントの実際のホスト名を得ることができ、falseであればDNSクエリを行うことなく、そのipアドレスに戻ることができる。
redirectPort 指定サーバがhttp要求を処理している時にSSL転送要求を受けた後、リダイレクトされたポート番号を指定します。
acceptCount 使用可能な処理要求のスレッド数がすべて使用される場合、処理キューに入れられる要求数を指定します。この数を超える要求は処理されません。
connection Timeout タイムアウトの時間数(ミリ秒単位)を指定します。
Egine (指定されたserviceにおける要求ハンドラを示し、Connectorからの要求を受信して処理する):
default Host デフォルトの処理要求のホスト名を指定します。少なくとも1つのホスト要素のname属性値と同じです。
Contect (webアプリケーションを表し、一般的にWARファイルであり、WARに関する具体的な情報はservlet仕様を参照):
ドッシBase アプリケーションのパスまたはWARファイルの保存経路
パス このウェブアプリケーションのurlのプレフィックスを表します。このように要求されるurlはhttp://localhost:8080/path/****
reloadable この属性は非常に重要です。trueであれば、tomcatは自動的にアプリケーションの/WEB-INF/libを検出します。 と/WEB-INF/classisディレクトリの変化は、新しいアプリケーションを自動的に搭載しています。
ホスト (仮想ホストを表す):
name ホスト名を指定
appBase アプリケーション基本ディレクトリ、つまりアプリケーションを保存するディレクトリです。
unpackWARs trueであれば、tomcatは自動的にWARファイルを解凍します。でないと、解凍せずにWARファイルからアプリケーションを実行します。
ロガー (ログ、デバッグ、エラー情報を表示):
クラスナメ loggerで使用するクラス名を指定します。このような場合はorg.apphe.caalina.Loggerを実現しなければなりません。 インターフェース
prefix ロゴファイルのプレフィックスを指定します。
スffix ロゴファイルのサフィックスを指定します。
timestamp trueであれば、localファイル名に時間を入れます。log.001-10-04.txt
Realm (ユーザ名、パスワード、およびroleを保存するデータベースを示す)
クラスナメ Realmで使用するクラス名を指定します。org.apache.caraina.Realmインターフェースを実現しなければなりません。
Valve (機能はロギングとほぼ同じで、そのprefixとスフィクス属性解釈とロギング は同じです
クラスナメ Valveで使用するクラス名を指定してください。org.apache.caraina.valves.Access LogValve類を使って、アプリケーションのアクセス情報を記録できます。
ディレクトリー ロゴファイルの保存場所を指定します。
pattern 2つの値があります。common方式では、リモートホスト名またはipアドレス、ユーザ名、日付、最初の行が要求する文字列、HTTP応答コード、送信されるバイト数を記録します。combined方式はcommon方式より記録された値がもっと多いです。
注意:
デフォルトのserver.xmlでは、Realm要素には一つのクラスName属性しか設定されていませんが、このファイルにはJDBCでデータベースに接続して検証する例もいくつか含まれています。 Managed Security
また、Parameeter、loaderなどの要素もあります。tomcatのドキュメントからこれらの要素の情報を取得することができます。
----------------------------------------
TomcatにおけるContextの配置
Webアプリケーションを開発した後、他のユーザーがアクセスできるようにWeb Serverにアプリケーションを公開する必要があります。JAVAのWEB開発分野では、TOMCATを私たちのWEBサーバとして使ってテストや正式な展開を行います。
一般的に、WEBアプリケーションをWAR形式に包装して、TOMCATのWEBAPPディレクトリにコピーして発表します。通常の状況では、TOMCATは自動的にWARファイルを解凍し、対応するディレクトリを生成します。また、メモリの中で、WEBアプリケーションに対応するCONTEXTパスを動的に作成します。例えば私達のWARファイルはSample.warです。解凍後のディレクトリはSampleディレクトリです。メモリの中で動的に作成されたConteextパスはSampleです。開発段階ではこのようなデフォルトの行動は受け入れられますが、正式な展開の場合、私たちは通常、アプリケーションのContectパスを修正して、私たちのニーズに適応する必要があります。
ユーザーにドメイン名だけを入力してSampleアプリケーションにアクセスしてもらいたいなら、TomcatのConteextの設定を変更する必要があります。具体的にはContextパスを設定する方法が二つあります。一つは修正{TOMCATuHOME}/conf/server.xmlファイルで、もう一つはContectセグメントファイルを作ってwebappsディレクトリの下に置くことです。私たちはここで最初の方法を紹介します。
任意のテキストエディタを使ってserver.xmlファイルを開いて、ノードの下でノードを追加して、path、docBase、debugとreloadable属性を設定します。
Xmlコード:
以下はこのファイルの基本的な構成情報で、より具体的な構成情報はtomcatの文書を参照してください。
server:
ポーター ポートを指定してください。このポートはtomcatを閉じる要求を監督します。
shutdown ポートに送信するコマンド文字列を指定します。
サービス:
name serviceの名前を指定します。
Connector (クライアントとサービスの間の接続を表します。)
ポーター サーバー側で作成するポート番号を指定し、この切断口でクライアントからの要求を傍受します。
ミニプロセッション サーバー起動時に作成した処理要求のスレッド数
maxProcessors 最大作成可能な処理要求のスレッド数
enaboleLook up trueであれば、request.getRemoteHost()を呼び出してDNSクエリを行うことによって、リモートクライアントの実際のホスト名を得ることができ、falseであればDNSクエリを行うことなく、そのipアドレスに戻ることができる。
redirectPort 指定サーバがhttp要求を処理している時にSSL転送要求を受けた後、リダイレクトされたポート番号を指定します。
acceptCount 使用可能な処理要求のスレッド数がすべて使用される場合、処理キューに入れられる要求数を指定します。この数を超える要求は処理されません。
connection Timeout タイムアウトの時間数(ミリ秒単位)を指定します。
Egine (指定されたserviceにおける要求ハンドラを示し、Connectorからの要求を受信して処理する):
default Host デフォルトの処理要求のホスト名を指定します。少なくとも1つのホスト要素のname属性値と同じです。
Contect (webアプリケーションを表し、一般的にWARファイルであり、WARに関する具体的な情報はservlet仕様を参照):
ドッシBase アプリケーションのパスまたはWARファイルの保存経路
パス このウェブアプリケーションのurlのプレフィックスを表します。このように要求されるurlはhttp://localhost:8080/path/****
reloadable この属性は非常に重要です。trueであれば、tomcatは自動的にアプリケーションの/WEB-INF/libを検出します。 と/WEB-INF/classisディレクトリの変化は、新しいアプリケーションを自動的に搭載しています。
ホスト (仮想ホストを表す):
name ホスト名を指定
appBase アプリケーション基本ディレクトリ、つまりアプリケーションを保存するディレクトリです。
unpackWARs trueであれば、tomcatは自動的にWARファイルを解凍します。でないと、解凍せずにWARファイルからアプリケーションを実行します。
ロガー (ログ、デバッグ、エラー情報を表示):
クラスナメ loggerで使用するクラス名を指定します。このような場合はorg.apphe.caalina.Loggerを実現しなければなりません。 インターフェース
prefix ロゴファイルのプレフィックスを指定します。
スffix ロゴファイルのサフィックスを指定します。
timestamp trueであれば、localファイル名に時間を入れます。log.001-10-04.txt
Realm (ユーザ名、パスワード、およびroleを保存するデータベースを示す)
クラスナメ Realmで使用するクラス名を指定します。org.apache.caraina.Realmインターフェースを実現しなければなりません。
Valve (機能はロギングとほぼ同じで、そのprefixとスフィクス属性解釈とロギング は同じです
クラスナメ Valveで使用するクラス名を指定してください。org.apache.caraina.valves.Access LogValve類を使って、アプリケーションのアクセス情報を記録できます。
ディレクトリー ロゴファイルの保存場所を指定します。
pattern 2つの値があります。common方式では、リモートホスト名またはipアドレス、ユーザ名、日付、最初の行が要求する文字列、HTTP応答コード、送信されるバイト数を記録します。combined方式はcommon方式より記録された値がもっと多いです。
注意:
デフォルトのserver.xmlでは、Realm要素には一つのクラスName属性しか設定されていませんが、このファイルにはJDBCでデータベースに接続して検証する例もいくつか含まれています。 Managed Security
また、Parameeter、loaderなどの要素もあります。tomcatのドキュメントからこれらの要素の情報を取得することができます。
----------------------------------------
TomcatにおけるContextの配置
Webアプリケーションを開発した後、他のユーザーがアクセスできるようにWeb Serverにアプリケーションを公開する必要があります。JAVAのWEB開発分野では、TOMCATを私たちのWEBサーバとして使ってテストや正式な展開を行います。
一般的に、WEBアプリケーションをWAR形式に包装して、TOMCATのWEBAPPディレクトリにコピーして発表します。通常の状況では、TOMCATは自動的にWARファイルを解凍し、対応するディレクトリを生成します。また、メモリの中で、WEBアプリケーションに対応するCONTEXTパスを動的に作成します。例えば私達のWARファイルはSample.warです。解凍後のディレクトリはSampleディレクトリです。メモリの中で動的に作成されたConteextパスはSampleです。開発段階ではこのようなデフォルトの行動は受け入れられますが、正式な展開の場合、私たちは通常、アプリケーションのContectパスを修正して、私たちのニーズに適応する必要があります。
ユーザーにドメイン名だけを入力してSampleアプリケーションにアクセスしてもらいたいなら、TomcatのConteextの設定を変更する必要があります。具体的にはContextパスを設定する方法が二つあります。一つは修正{TOMCATuHOME}/conf/server.xmlファイルで、もう一つはContectセグメントファイルを作ってwebappsディレクトリの下に置くことです。私たちはここで最初の方法を紹介します。
任意のテキストエディタを使ってserver.xmlファイルを開いて、ノードの下でノードを追加して、path、docBase、debugとreloadable属性を設定します。
Xmlコード:
WEB-INF/web.xml