piyolog

piyokangoの備忘録です。セキュリティの出来事を中心にまとめています。このサイトはGoogle Analyticsを利用しています。

ルート画面の表示変更方法。

いきなりTomcat絡みで。
Tomcat自体にHTTPサーバーの機能がついているけども
トップ(http://localhost:8080/)で表示される(正式名なんて呼ぶのかわかりませぬ。。DocumentRoot?)
画面を変更したいお話。


一般的にはApacheと連携させて、Apache側の設定で
参照するディレクトリを変更する方法が多いみたいですが、
Tomcat単独(いわゆるスタンドアロン構成)の場合はどうしたらいいのかよく分からない。。
Tomcat DocumentRoot」でぐぐるTomcatの場合、
ROOTコンテキスト直下を参照するようにコードにベタ書きされているとのこと。


ROOT自体を置き換える場合はROOT.warといったWARファイルを配置するか、
別のWARファイルを参照させたい場合は、ROOT.xml(コンテキスト.xml)の
docBase属性の参照先を変更してあげればよいみたいだ。


最初から用意されているROOTコンテキスト直下を置き換える場合、
4.1系や6.x系のTomcatであれば、直下のindex.jspを書き換えるだけでよい。
ただし、5.5系だとweb.xmlApacheサーブレットを呼ぶように記述されているため、
出力する内容を独自のものに修正したい場合は、
ROOTコンテキスト($TOMCAT_HOME/webapps/ROOT/WEB-INF/)の
web.xmlの以下の内容をコメントアウトする必要がある。


org.apache.jsp.index_jsp
/index.jsp


http://localhost:8080/index.jsp、または指定無し(http://localhost:8080)の際に
呼ばれるものが実際に置き換えたファイルとなる。


また、conf/web.xml
1.index.html
2.index.htm
3.index.jsp
の順で参照に行くように設定されているため、
同じディレクトリ内にファイルが存在しないか確認する必要がある。


index.jspを削除しなければ、URLで直接ファイル名を指定した場合は
アクセスされる可能性があるため、閲覧を許容しないものは削除した上で、
静的な出力でよければindex.htmlを配置してしまう方が簡単かもしれない。