@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

apache+Tomcatでhttp://localhost/直下でjspファイルを動かす方法

投稿者投稿内容
ma2
会議室デビュー日: 2008/09/09
投稿数: 6
投稿日時: 2009-04-11 16:11
現在、apache2.0+Tomcat5.5を使って、複数のWEBサイトを運営しています。
ドメイン直下でjspファイルを各サイトで動かしたのですが、ここ数年調べていたのですが、あと一歩のところでうまくいきません。
context.xmlやserver.xmlなど、様々なファイルの設定を変えたりしたのですが…。
どなたか同じような状況で、実際にドメイン直下でjspファイルを動かしている方はいらっしゃらないでしょうか。もし可能であれば、やり方をご教授して頂ければ、幸いで御座います。
何卒、宜しくお願い申し上げます。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2009-04-11 19:36
Apache2.2 + JBoss AS 4.2 でサーバを運用しています。(サーブレットコンテナである JBossWeb は Tomcat 6.0 ベース)
ドメイン直下で jsp ファイルを動かす、とはどういう意味でしょうか?
あと一歩のところでうまくいかない、とは具体的に何がうまくいかないのでしょうか?


[ メッセージ編集済み 編集者: 山本 裕介 編集日時 2009-04-11 19:36 ]
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2009-04-11 22:01
Tomcatの場合、ROOTという名前のアプリを作ると、
http://xxx.xxx.xxx.xxx:8080/<webapp_name>/の、
<webapp_name>/を省略することができます。
ROOT.warを作ってデプロイする感じになります。
ma2
会議室デビュー日: 2008/09/09
投稿数: 6
投稿日時: 2009-04-13 13:25
お忙しいところ、お返事頂きまして、誠に有難うございます。

>山本裕介様
ドメイン直下で動かす、ということは、webappsの下に置いたディレクトリ名をURLから省力する、ということです。
 webappsの下にtmpというディレクトリを作った場合、http://xxxxx.com/tmp/index.jspとなってしまうので、このtmpを消したい、という感じです。
 あと一歩、というのは、ちょっと言い過ぎました、申し訳ございません。
 ディレクトリ名をROOTにすれば、省力が出来るのですが、複数サイトを運営する場合、この方法だと、ひとつしか対応できないため、現在行き詰っております。

>かつのり様
つまり、webapps以下のディレクトリ名をROOTにする、ということでしょうか?
過去に、以下URLを参考にしながらやってみたことがあります。
http://neta.ywcafe.net/000880.html
このやり方ですと、複数サイトを運営する場合、webapps以下のディレクトリも複数用意する必要があり、ROOTディレクトリだけでは対応できませんでした。
自分で指定した名前のディレクトリを省略する方法はないのでしょうか?
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2009-04-13 13:39
では、逆にお聞きしますが、
どうやってアプリケーションを区別するつもりなのでしょう?
サブドメインなどでしょうか。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2009-04-13 15:18
仮想ホスト(Virtual hosting)という機能がお探しのものかもしれません。
http://tomcat.apache.org/tomcat-5.5-doc/virtual-hosting-howto.html
しましま
常連さん
会議室デビュー日: 2005/01/08
投稿数: 41
投稿日時: 2009-04-13 20:59
mod_rewriteとmod_proxy_ajpを組み合わせれば、URLマッピングは自由自在です。

http://localhost/hoge.jsp → http://localhost:8080/hoge/index.jsp
http://localhost/hage.jsp → http://localhost:8080/hage/index.jsp
http://localhost/boke.jsp → http://localhost:8080/boke/index.jsp

↑こんな感じの設定が可能です。
詳しくはApache2のマニュアルを見てください。
ma2
会議室デビュー日: 2008/09/09
投稿数: 6
投稿日時: 2009-04-13 21:45
> かつのり様
 現在は、apacheのバーチャルホストの設定で、どのディレクトリを見るか、ipで振り分けています。その際にwebapps以下のディレクトリ名を省略できずにいます。。

> 山本 裕介様
 有難うございます。初耳なやり方でした。ちょっと私には難易度が高いかもしれませんが、是非とも試してみたいと思います。

> しましま様
 正にこれがやりたい設定です。確かmod_proxy_ajpはapache2.2からだったかと思いますが、バージョンを上げて試します。

少しですが調べた感じですと、mod_proxy_ajpとmod_rewriteが自分の環境にあっているかと思います。それでうまくいかなければ、virtual hostingを試そうと思います。
本当に助かりました。有難う御座います。

スキルアップ/キャリアアップ(JOB@IT)