LoginSignup
4
3

More than 1 year has passed since last update.

Tomcatのルートディレクトリ構造

Last updated at Posted at 2021-07-05

Tomcatをインストールすると、以下のディレクトリが作成される。

/
├── bin
├── conf
├── lib
├── logs
├── temp
├── webapps
├── work
├── LICENCE
├── NOTICE
├── RELEASE-NOTE
└── RUNNNING.txt

フォルダ名 説明
bin Tomcat実行(起動/停止)ファイル
conf Tomcatの起動時に読み込む設定ファイル。Tomcatを制御する主な設定ファイルはserver.xml
lib 共有ライブラリファイル(.jar)を管理。このディレクトリに管理した.jarファイルは、全てのWebアプリケーションからimport文で利用可。(TomatのデフォルトAPI)
logs アクセスログ、エラーログ、実行ログなどのログファイルを管理
temp 一時ファイルを保存
webapps Webアプリを配備
work JSPファイルをサーブレットに解析した結果のJavaソースとクラスファイルをWebアプリケーション別に格納

★Webアプリの実行に関しては太字部分(bin,conf,logs,webapps)が特に重要

各ディレクトリ

binディレクトリ

Windows用Tomcat8.5系のbinディレクトリについて

名称 説明
bootstrap.jar Tomcatの起動用Javaライブラリ。catalina.bat,service.bat,tool-wrapper.batから指定され各種バッチ実行時に梱包されているorg.apache.catalina.startup.Bootstrapが実行される。 利用者がこのjarファイルを直接操作することはまずない。
catalina.bat Tomcatを起動させるための最もコアなバッチファイル(古いバージョンから伝わる起動用バッチ)。 Tomcatを実行する場合には、startup.batを利用。
configtest.bat confディレクトリ以下に格納された設定ファイル各種の妥当性チェックを実施。Tomcatを仮起動するためにTomcatが停止している必要がある。
digest.bat 標準Realmで指定するユーザ名に対するパスワードを暗号化するためのバッチ。server.xmlファイルなどの設定ファイルにデータベースの接続ユーザを定義する場合ときに ユーザに対するパスワードを暗号化することでセキュリティ要件を高める事が目的。
service.bat TomcatをWindowsのサービスとして登録・削除。
service.bat install [サービス名] :サービスの登録
service.bat remove [サービス名] :サービスの削除
setclasspath.bat 環境変数設定用バッチファイル。catalina.bat及びtool-wrapper.batからサブバッチとして実行される。
shutdown.bat Tomcatプロセスの停止用バッチファイル
startup.bat Tomcatプロセスの起動用バッチファイル
tomcat8.exe WindowsサービスとしてTomcat 8を実行するためのサービスアプリケーション
tomcat8w.exe Tomcatサービスを監視および設定するためのGUIアプリケーション
tomcat-juli.jar Apache Tomcatの内部ログはJULIを使用している。catalina.bat及びtool-wrapper.bat実行時にクラスパスに本jarファイルが指定される。
tool-wrapper.bath これは、環境変数を設定するために使用できる一般的なTomcatコマンドラインツールラッパースクリプト。 設定されたクラスパスにある完全修飾クラスのmainメソッドを呼び出します。 これはdigest.batによって内部的に使用される。

confディレクトリ

名称 説明
catalina.policy Tomcatの起動時のオプション(catalina.bat run -security)で起動するセキュリティ・マネージャーが管理する Javaに対するセキュリティ制御の設定ファイル。 本設定ファイルを設定することで悪意のあるapplet,サーバーサイドJavaのプログラムの抑制を行います。
catalina.properties Tomcatに特化したプロパティファイル。
サーバーサイドJavaからSystem.getProperty("ファイル内で定義された値")で取得可能
context.xml 全てのWebアプリケーションに適用されるデフォルト・コンテキスト
【コンテキスト評価順:1】
jaspic-providers.xml JavaTM Authentication Service Provider Interface for Containers用の設定ファイル
Webコンテナに対してサードパーティの認証システムを連携する機能
例えばGoogle OAuthを利用してGoogleアカウント所有者のみシステムを利用可能とする場合には、
本設定ファイルに Google OAuthの設定を明記し、lib配下に対応するjarファイルを格納する。 デフォルトでは、何も指定されていません。
jaspic-providers.xsd jaspic-providers.xmlファイルの構文を定義したxsdファイル
logging.properties Tomcatの起動、エラー、アクセスログの設定ファイル。フォーマットはjava.util.loggingを利用
server.xml Tomcatの実行ポート番号、Apacheの連携設定、バーチャルホスト設定などTomcatの動作を決める主設定ファイル
tomcat-users.xml Tomcat Webアプリケーションマネージャ(http://localhost:8080/manager)の管理者アカウント管理用ファイル
tomcat-users.xsd tomcat-users.xmlファイルの構文を定義したxsdファイル
web.xml 全てのコンテキスト(Webアプリケーション)に適用される配備記述子(Deployment Descriptor)
【web.xml評価順:1】
個別のコンテキストを操作する場合には、conf/エンジン名/ホスト名/コンテキスト名.xml又は
warファイルに梱包したWEB-INF/web.xmlで指定します。

confディレクトリで重要な点は、conf/context.xmlとconf/web.xmlは全てのコンテキスト(Webアプリケーション)に適用される共通のファイルである点。
Tomcatサーバの動作を操作する起点となるファイルは、server.xmlファイルになる。

WEB-INFディレクトリ

「webapps/examples」の構成は以下のようになっている。
examples
├── jsp
├── servlets
├── WEB-INF
│   ├── classes
│   ├── jsp
│   ├── jsp2
│   ├── lib
│   ├── tags
│   └── web.xml
├── websockets
└── index.html

このうち、WEB-INF以下について

名称 説明
classes 作成したプログラムをコンパイルして置く
lib Webアプリケーションを動かすために必要なライブラリがあった場合、このフォルダへ
web.xml 設定ファイル。ここに使用するサーブレットクラスを記述したり、追加したライブラリ情報を記述したりする。
4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3