2012-04-06 12 views
1

アプリケーションは、コンテキストパス "/ environame/appname"でTomcat6にデプロイされます。Tomcat 6でアプリケーションのコンテキストパスを定義する方法は?

<Context 
... 
     path="/environame/appname" 
... 
</Context> 

しかし、私は、次のURLを使って自分のアプリケーションにアクセスすることはできません。

http://localhost:8080/environame/appname

は、私が "environame" と "APPNAME" の間のアンダースコアの代わりにスラッシュを使用する必要があります。

http://localhost:8080/environame_appname

のTomcat 5は動作が異なります。 Tomcatの5の場合
URLにあり下線されません。

私が代わりにアンダースコアのスラッシュを使用して自分のアプリケーションにアクセスするために自分のアプリケーションやTomcatの6の構成に変更する必要がありますどのような

http://localhost:8080/environame/appname

"environame"と "appname"の間?

UPDATE:

パス処理のために適切な Webアプリケーションを選択するために、各リクエストURIの先頭と照合され、このWebアプリケーションのコンテキストパス。 特定のホスト内のすべてのコンテキストパスは一意でなければなりません。 空の文字列( "")のコンテキストパスを指定した場合は、他の コンテキストに割り当てられていないすべての要求を処理する このホストのデフォルトWebアプリケーションを定義しています。

このフィールドの値は、それが.xmlのコンテキストファイル又は文書ベースのいずれかのために使用さ ファイル名から推測されるように、静的 は、server.xmlのコンテキストを定義する場合を除いて設定されてはなりません。

http://tomcat.apache.org/tomcat-5.5-doc/config/context.html

我々は$ CATALINA_HOME/confに/カタリナ/ localhostの/ environame_appname.xmlファイルにコンテキストxmlファイルを格納します。 Tomcat 5.0.28は、Context要素のpath属性を使用します。
Tomcat 6は、コンテキストXMLファイルの名前を使用します。
xontext xmlファイルの名前の代わりにパス属性を使用するように設定を変更することはできますか?

ANSWER:
パス属性がコンテキストのxmlのコンテキストタグ内に設定されている場合は、バグbug#46713

は は無視される存在です。代わりにパスは "/" +に設定されます。'/'でpathesさえも は '/'を '#'に置き換えてファイル名にエンコードすることができますが、それは非常に であり、既存のパス属性は単に無視されてしまうことが混乱しています。

したがって、コンテキストXMLファイルの名前をenvironame#appname.xmlに変更する必要があります。

答えて

0

これまでのところ(tomcat 4と思う)environame_appname.warという名前のwarアーカイブを展開することができ、tomcatはurl environame/appname /で利用可能にしました。まだ動作しています(まだテストする時間はありません)。 Tomcatはスラッシュとアンダースコアで置換えを行います。

あなたの目標を達成する別の方法は、apacheとmod_proxy、mod_proxy_ajp(またはmod_proxy_html)とmod_rewriteを使用することです。次に、tomcat(app01とapp02)に2つのアプリケーションを定義し、/ app01(resp/app02)へのリクエストをTomcatに転送するプロキシルールを定義し、/ env01/appへのリクエストを/ app01と/ env02に書き換える書き換えルール/ app02〜/ app02

+0

私は、Tomcat 6がcontext要素のpath属性の値の代わりにcontext xmlファイルのファイル名を使用することを発見しました。 environame_appname.xmlファイルにContextの設定を保存します。 –

+0

それで、それはまだ動作します。コンテキスト定義ファイル名またはwarファイル名からアプリケーション名/パスを定義するのと同じメカニズムです。 – magomi

+0

私は答えを見つけました。私の更新を見てください。 –

関連する問題