The Apache Tomcat Servlet/JSP Container

Apache Tomcat 6.0

Apache Logo

Apache Tomcat 設定リファレンス

HTTP Connector

はじめに

HTTP Connector 要素は HTTP/1.1 プロトコルをサポートする Connector コンポーネントを表す。 同コンポーネントにより Catalina は,サーブレットと JSP ページを実行する能力に加えて, スタンド=アロンの web サーバとして機能できる。 同コンポーネントのインスタンスはそれぞれサーバ上の特定の TCP ポート番号で接続を待ち受ける。 単一の Service の一部として, このような Connector を1個以上設定してよい。 各 Connector はリクエストの処理とレスポンスの生成を実行するために [リクエストを] 関係する Engine に転送する。

もしも君が AJP プロトコルによる web サーバへの接続に使う Connector (例えば Apache 1.3 用の mod_jk 1.2.x コネクタなど) を設定したいならば, ここではなく こちら を見よ。

到来する各リクエストは,その存続期間中,1本のスレッドを必要とする。 もしも現在利用可能なリクエスト処理スレッドで扱える以上のリクエストを同時に受け取ったならば, 設定された最大値 (maxThreads 属性の値) まで,追加のスレッドが生成される。 もしもさらに多くの同時リクエストを受け取ったならば, 設定された最大値 (acceptCount 属性の値) まで, Connector が生成したサーバ・ソケットの中にリクエストが [処理されるのを待って] 積み上げられる。 さらに多くの同時リクエストは,処理のための資源が利用可能になるまで, "connection refused" (「接続は拒否されました」) エラーを受け取ることになる。

属性
共通属性

Connector のすべての実装は次の属性をサポートする:

AttributeDescription
allowTrace

TRACE HTTP メソッドを有効または禁止するために使われる真偽値。 指定しなければ,この属性は false にセットされる。

emptySessionPath

true にセットすると,セッション・クッキーのすべてのパスが / にセットされる。 これは portlet 仕様の実装のために有用だが,もしも1クライアントからそのサーバに多くのアプリケーションが アクセスすると,性能に大きく影響する。 指定しなければ,この属性は false にセットされる。

enableLookups

true にセットすると,request.getRemoteHost() の呼出しで DNS lookup が実行され, リモート・クライアントの実際のホスト名が返される。 false にセットすると,DNS lookup が省略され,文字列形式で IP アドレスが返される (よって性能が向上する)。 デフォルトでは DNS lookup が有効である。

maxPostSize

コンテナの FORM URL パラメタ構文解析で扱う POST の最大バイト数。 この属性を 0 以下の値にセットすると無制限になる。 指定しなければ,この属性は 2097152 (2 メガバイト) にセットされる。
[訳注: ファイルのアップロードに使うのは multipart/form-data であり,この属性の対象外である]

maxSavePostSize

FORM または CLIENT-CERT 認証のあいだコンテナが保存/バッファリングする POST の最大バイト数。 どちらのタイプの認証に対しても,ユーザが認証される前に POST が保存/バッファリングされる。 CLIENT-CERT 認証に対し,POST は SSL ハンドシェークのあいだバッファリングされ, リクエストが処理されるとバッファが空にされる。 FORM 認証に対し,POST はユーザが login フォームにリダイレクトされるあいだ保存され, ユーザが認証に成功するか,認証リクエストに関するセッションが期限切れになるまで維持される。 この属性を -1 にすると無制限になる。 属性を 0 にすると認証のあいだの POST データの保存が禁止される。 指定しなければ,この属性は 4096 (4 キロバイト) にセットされる。

protocol

到来するトラフィックを扱うためのプロトコルをセットする。 デフォルト値は HTTP/1.1 であり, org.apache.coyote.http11.Http11Protocol を設定する。 これはブロッキング Java コネクタである。
もしも PATH (Windows) または LD_LIBRARY_PATH (ほとんどの unix システム) 環境変数が Tomcat native ライブラリを含んでいるならば,APR コネクタが自動的に設定される。 APR コネクタは,HTTPS に対してデフォルトの Java コネクタとは異なった設定をすることに注意されたい。
この属性の他の値は次のとおりだが,これに限られない:
org.apache.coyote.http11.Http11Protocol - HTTP/1.1 と同じ
org.apache.coyote.http11.Http11NioProtocol - 非ブロッキング Java コネクタ
org.apache.coyote.http11.Http11AprProtocol - APR コネクタ
我々の Connector Comparison チャートを見よ。 どちらの Java コネクタの設定も,http と https の両方に対して,同一である。
APR コネクタと APR 特有の SSL 設定についての詳しい情報については, APR documentation を読まれたい。

proxyName

もしもこの Connector をプロキシ構成で使うならば, この属性を設定して,request.getServerName() の呼出しで返されるサーバ名を指定せよ。 詳しい情報については Proxy Support を見よ。

proxyPort

もしもこの Connector をプロキシ構成で使うならば, この属性を設定して,request.getServerPort() の呼出しで返されるサーバ・ポート番号を指定せよ。 詳しい情報については Proxy Support を見よ。

redirectPort

もしもこの Connector が非 SSL リクエストをサポートしており, 受け取ったリクエストの宛先に該当する <security-constraint> が SSL トランスポートを要求しているならば,Catalina は自動的にそのリクエストをここで指定されたポート番号へリダイレクトする。

SSLEnabled

コネクタ上で SSL トラフィックを有効にするには,この属性を使う。 コネクタ上で SSL ハンドシェーク/暗号化/復号をオンにするには,この値を true にする。 デフォルト値は false である。 この値を true にする時は,同時に,正しい request.getScheme() 値と request.isSecure() 値をサーブレットに渡すため, scheme 属性と secure 属性をセットするようにしたい。 詳しい情報については SSL Support を見よ。

scheme

この属性は, request.getScheme() の呼出しが返すべきプロトコルの名前にセットする。 例えば SSL コネクタに対しては,この属性を "https" にセットしたい。 デフォルト値は "http" である。

secure

このコネクタが受け取ったリクエストに対し, request.isSecure() の呼出しで true を返させたいならば,この属性を true にセットする。 SSL コネクタでは,または (暗号化カード,SSL アプライアンス,あるいは web サーバなどの) SSL アクセラレータからデータを受け取る非 SSL コネクタでは,true にセットしたい。 デフォルト値は false である。

URIEncoding

これは,URL の %xx をデコードして得られる URI バイトを [Java の Unicode 文字列に] デコードするために使われる文字エンコーディングを指定する。 指定しなければ,ISO-8859-1 が使われる。
[訳注: サーブレットの出力と,この値をともに UTF-8 とすると, 現在,日本で使用されているほとんどの PC 用ブラウザに対して無難です]

useBodyEncodingForURI

これは,URI query パラメタに使われる文字エンコーディングとして, URIEncoding のかわりに, contentType で指定されたエンコーディングを使うかどうかを指定する。 この設定は Tomcat 4.1.x との互換性のためにある。 Tomcat 4.1.x では,contentType で指定されたか,または Request.setCharacterEncoding メソッドを使って陽にセットされたエンコーディングが URL 由来のパラメタに対しても使われた。 デフォルト値は false である。

useIPVHosts

リクエストを受け取った IP アドレスを使って, リクエストの送り先の Host を決定するように Tomcat を設定するには, この属性を true にセットする。 デフォルト値は false である。

xpoweredBy

Servlet 仕様で推奨されたヘッダを使って,その仕様をサポートしていることを広告するように Tomcat を設定するには,この属性を true にセットする。 デフォルト値は false である。

標準実装

HTTP は (上記の共通属性に加えて) 次の付加的な属性をサポートする:

AttributeDescription
acceptCount

すべての可能なリクエスト処理スレッドが使用中のとき,到来する接続要求に対するキューの最大長。 キューが一杯になったとき,リクエストの受取りは拒否される。 デフォルト値は 10 である。

address

複数の IP アドレスをもつサーバに対し, この属性は,指定されたポート番号で待ち受けるのにどのアドレスを使うかを指定する。 デフォルトでは,このポート番号はサーバに振られたすべての IP アドレスで使われる。

bufferSize

このコネクタが作る入力ストリームに用意されるバッファのサイズ (バイト単位)。 デフォルトでは,2048 バイトのバッファが用意される。

compressableMimeType

属性値は,HTTP compression を使用し得る MIME タイプのカンマ区切りの並びである。 デフォルト値は text/html,text/xml,text/plain である。

compression

Connector は HTTP/1.1 GZIP compression を使って,サーバ帯域の節約を試みることができる。 パラメタとして受理可能な値は "off" (圧縮禁止),"on" (圧縮許可,テキスト・データを圧縮), "force" (すべての場合で圧縮を強制),または整数値 ("on" と等価だが,出力が圧縮される前の最小のデータ量を指定する) である。 content-length が未知で compression が "on" 以上だった場合も,出力は圧縮される。 指定しなければ,この属性は "off" にセットされる。

connectionLinger

この Connector が使うソケットが閉じるとき, ソケットが linger するミリ秒数。 デフォルト値は -1 (ソケット linger は禁止)。

connectionTimeout

接続を accept した後,リクエストの URI 行が現れるのを,この Connector が待つミリ秒数。 デフォルト値は 60000 (i.e. 60 秒)。

executor

Executor 要素の名前への参照。 もしもこの属性が有効であって,指名された executor が存在するならば,コネクタは 他のすべてのスレッド属性を無視して,この executor を使う。

keepAliveTimeout

この Connector が接続を閉じる前に別の HTTP リクエストを待つミリ秒数。 デフォルト値は connectionTimeout 属性にセットされた値が使われる。

disableUploadTimeout

このフラグは,サーブレットが実行されている間,別の,より長い接続タイムアウトを使うことを サーブレット・コンテナに許す。 それはつまるところ,サーブレットがより長い時間をかけて実行を完了させること,または, データをアップロードしている間のより長いタイムアウトを許す。 指定しなければ,この属性は "true" にセットされる。

maxHttpHeaderSize

リクエストとレスポンスの HTTP ヘッダの最大サイズ (バイト単位)。 指定しなければ,この属性は 4096 (4KB) にセットされる。

maxKeepAliveRequests

サーバが接続を閉じるまでにパイプラインされ得る HTTP リクエストの最大個数。 この属性を 1 にセットすると HTTP/1.0 の keep-alive に加えて HTTP/1.1 の keep-alive とパイプラインが禁止される。 これを -1 にセットすると,無制限の個数のパイプライン化ないし keep-alive の HTTP リクエストが許される。 指定しなければ,この属性は 100 にセットされる。

maxThreads

この Connector が生成するリクエスト処理スレッドの最大個数。 したがって,この属性は同時にリクエストが処理される最大個数を決定する。 指定しなければ,この属性は 40 にセットされる。 このコネクタに executor が関連付けられていれるときは,この属性は無視され, コネクタは内部スレッド・プールのかわりに executor を使ってタスクを実行する。

noCompressionUserAgents

属性値は,compression の機能をサポートしていると [HTTP ヘッダで] 自称しているが, 実装がこわれているために compression を使うべきでない HTTP クライアントの user-agent にマッチする正規表現のカンマ区切りの並びである。 デフォルト値は空文字列 (正規表現のマッチングをしない) である。

port

この Connector がサーバ・ソケットを作成して接続の到来を待つ TCP ポート番号。 君のオペレーティング・システムは,特定の IP アドレスで特定のポート番号を listen するサーバ・アプリケーションをたった1個だけ許すだろう。

restrictedUserAgents

属性値は, たとえ HTTP/1.1 または HTTP/1.0 の keep alive 機能をサポートしていると [HTTP ヘッダで] 自称していたとしても keep alive を使うべきでない HTTP クライアントの user-agent にマッチする正規表現のカンマ区切りの並びである。 デフォルト値は空文字列 (正規表現のマッチングをしない) である。

server

HTTP レスポンスに対する Server ヘッダ。 君がパラノイドでない限り,この機能は必要ない。

socketBuffer

ソケット出力バッファリングのために用意されるバッファのサイズ (バイト単位)。 バッファの使用を禁止するために -1 を指定できる。 デフォルトでは,9000 バイトのバッファが使われる。

tcpNoDelay

true にセットすると, TCP_NO_DELAY オプションがサーバ・ソケットにセットされる。 これはたいていの環境で性能を改善する。 デフォルトで true にセットされる。

threadPriority

リクエスト処理スレッドの JVM 内部での優先度。 デフォルト値は java.lang.Thread#NORM_PRIORITY である。 この優先度が何を意味するのか詳しい情報については java.lang.Thread の JavaDoc を見よ。

NIO 実装

NIO コネクタは,コネクタのチューンに使えるすべての低水準ソケット・プロパティを公開する。 これらの属性のほとんどは JDK のソケット実装に直接リンクしているから, 君は JDK API 文書にその実際の意味を見つけ出すことができる。
原注: JDK のバージョンによっては, setTrafficClass が問題を起こす。 その回避策は [java の] コマンド行に -Djava.net.preferIPv4Stack=true を追加することである。

AttributeDescription
useSendfile

(bool) この属性は sendfile 機能を有効または無効にする。デフォルト値は true である。

useExecutor

(bool) true にセットすると,NIO スレッド・プール・エクセキュータを使う。 デフォルト値は true である。 false にセットすると,その実行用スタックに基づくスレッド・プール [a thread pool based on a stack for its execution] を使う。 一般に, エクセキュータを使うとほんの少し低速な性能が得られるが, トラフィックが FIFO キュー経由でキューイングされるから,高負荷環境ではより公平に接続が処理される。 true にセットしたとき (デフォルト),最大プール・サイズは maxThreads 属性であり, 最小プール・サイズは minSpareThreads である。 もしも executor 属性が存在して,それが妥当な共有スレッド・プールを指しているならば,この値は無視される。

acceptorThreadCount

(int) 接続を accept するために使われるスレッドの個数。 マルチ CPU マシンっではこの値を増やす。ただし,実際には決して 2 より大きくする必要はないだろう。 また,非 keep alive 接続が多数ある場合も,この値を増やすとよいだろう。 デフォルト値は 1 である。

pollerThreadCount

(int) イベントのポーリングを行うために使われるスレッドの個数。 デフォルト値は 1 である。 それ以上に増やす理由はないはずだが,君自身で実験して結果を見るとよい。

pollerThreadPriority

(int) poller スレッド [ポーリングを行うために使われるスレッド] の優先度。 デフォルト値は java.lang.Thread#NORM_PRIORITY である。 この優先度が何を意味するのか詳しい情報については java.lang.Thread の JavaDoc を見よ。

acceptorThreadPriority

(int) acceptor スレッド (新しい接続を accept するために使われるスレッド) の優先度。 デフォルト値は java.lang.Thread#NORM_PRIORITY である。 この優先度が何を意味するのか詳しい情報については java.lang.Thread の JavaDoc を見よ。

selectorTimeout

(int) poller が select() でタイムアウトするまでの,ミリ秒単位の時間。 同じスレッドで接続のクリーンナップが行われるから,この値は重要である。 この値を極端に大きくしてはならない。 デフォルト値は 1000 ミリ秒である。

useComet

(boo) comet サーブレットを許すか否か。デフォルト値は true である。

processCache

(int) プロトコル・ハンドラは高速化のため Http11NioProcessor オブジェクトをキャッシュする。 この属性はキャッシュされるオブジェクトの個数を指示する。 -1 は無制限を意味する。デフォルトは 200 である。 この値はおおむね maxThreads 値に近い値にセットするとよい。

socket.directBuffer

(bool) ダイレクト ByteBuffer を使うか,それとも java にマップされた ByteBuffer を使うかのブーリアン値。 デフォルトは false である。
ダイレクト・バッファを使うときは,ダイレクト・メモリ空間に適切な量のメモリを割り付けるように注意する。 Sun の JDK では,例えば -XX:MaxDirectMemorySize=256m のようにする。

socket.rxBufSize

(int) ソケット受信バッファ (SO_RCVBUF) のサイズ (バイト単位)。 デフォルト値は 25188 である。

socket.txBufSize

(int) ソケット送信バッファ (SO_SNDBUF) のサイズ (バイト単位)。 デフォルト値は 43800 である。

socket.appReadBufSize

(int) Tomcat でオープンされる接続はそれぞれ読取り ByteBuffer および書込み ByteBuffer と関連付けられる。 この属性はこれらのバッファのサイズを制御する。 デフォルトではこの読取りバッファのサイズは 8192 である。 並列性が低い場合,君はこの値を増やしてバッファにより多くのデータを与えてよい。 keep alive 接続の量が多すぎる場合は,この数値を減らすか,ヒープ・サイズを増やすこと。

socket.appWriteBufSize

(int) Tomcat でオープンされる接続はそれぞれ読取り ByteBuffer および書込み ByteBuffer と関連付けられる。 この属性はこれらのバッファのサイズを制御する。 デフォルトではこの書込みバッファのサイズは 8192 である。 並列性が低い場合,君はこの値を増やしてバッファにより多くのデータを与えてよい。 keep alive 接続の量が多すぎる場合は,この数値を減らすか,ヒープ・サイズを増やすこと。
このデフォルト値はかなり小さい。 もしも君が並列的に何万個もの接続を扱うのでなければ,これをもっと大きくすべきだ。

socket.bufferPool

(int) Nio コネクタは,ソケットへリンクされた要素を保持する NioChannel と呼ばれるクラスを使う。 ガーベジ・コレクションを軽減するため,Nio コネクタはこれらの channel オブジェクトをキャッシュする。 この属性値は,このキャッシュのサイズを指定する。 デフォルト値は 500 である。 これはキャッシュが 500 個の NioChannel オブジェクトを保持することを意味する。 -1 ならば無制限のキャッシュになり,0 ならばキャッシュ無しになる。

socket.bufferPoolSize

(int) NioChannel プールは,オブジェクト [の個数] によってではなく, サイズによっても [大きさを制限] できる。 サイズは次のように計算される:
NioChannel buffer size = read buffer size + write buffer size
SecureNioChannel buffer size = application read buffer size + application write buffer size + network read buffer size + network write buffer size
値はバイト単位であり,デフォルト値は 1024*1024*100 (100MB) である。

socket.processorCache

(int) Tomcat はガーベジ・コレクションを軽減するため SocketProcessor オブジェクトをキャッシュする。 この整数値はキャッシュに保つオブジェクトの最大個数を指定する。 デフォルトは 500 である。 -1 ならば無制限のキャッシュになり,0 ならばキャッシュ無しになる。

socket.keyCache

(int) Tomcat はガーベジ・コレクションを軽減するため KeyAttachment オブジェクトをキャッシュする。 この整数値はキャッシュに保つオブジェクトの最大個数を指定する。 デフォルトは 500 である。 -1 ならば無制限のキャッシュになり,0 ならばキャッシュ無しになる。

socket.eventCache

(int) Tomcat はガーベジ・コレクションを軽減するため PollerEvent オブジェクトをキャッシュする。 この整数値はキャッシュに保つオブジェクトの最大個数を指定する。 デフォルトは 500 である。 -1 ならば無制限のキャッシュになり,0 ならばキャッシュ無しになる。

socket.tcpNoDelay

(bool) 標準[実装]の設定 tcpNoDelay と同じ。デフォルト値は false

socket.soKeepAlive

(bool) ソケットの keep alive 設定 (SO_KEEPALIVE) のブーリアン値。デフォルトは false

socket.ooBInline

(bool) ソケット OOBINLINE 設定のブーリアン値。デフォルト値は true

socket.soReuseAddress

(bool) ソケットの reuse address オプション (SO_REUSEADDR) のブーリアン値。デフォルト値は true

socket.soLingerOn

(bool) ソケットの so linger オプション (SO_LINGER) のブーリアン値。デフォルト値は true。 このオプションは soLingerTime 値とペアである。

socket.soLingerTime

(bool) [← (int) の誤り] ソケットの so linger オプション (SO_LINGER) の秒単位の値。デフォルト値は 25 秒。 このオプションは soLinger 値とペアである。

socket.soTimeout

(int) ソケットの読取りタイムアウト (SO_TIMEOUT) のミリ秒単位の値。 デフォルト値は 5000 ミリ秒。

socket.soTrafficClass

(byte) ソケットのトラフィック・クラスを表す 0 から 255 までの値, [デフォルト値は] 0x04 | 0x08 | 0x010。 [java.net.Socket#setTrafficClass(int) を参照。 値の意味は 0x04 (maximize reliability, 信頼性最大), 0x08 (maximize throughput, スループット最大), 0x010 (minimize delay, 遅延最小) のビット和]

socket.performanceConnectionTime

(int) 性能設定の第1の値。デフォルトは 1, Socket Performance Options を参照。

socket.performanceLatency

(int) 性能設定の第2の値。デフォルトは 0, Socket Performance Options を参照。

socket.performanceBandwidth

(int) 性能設定の第3の値。デフォルトは 1, Socket Performance Options を参照。

selectorPool.maxSelectors

(int) セレクタ競争 (selector contention) を軽減するために,プールで使われるセレクタの最大個数。 コマンド行[オプション] org.apache.tomcat.util.net.NioSelectorShared の値を false にセットしたときは,このオプションを使う。 デフォルト値は 200

selectorPool.maxSpareSelectors

(int) セレクタ競争を軽減するために,プールで使われるスペア・セレクタの最大個数。 セレクタがプールに返還されたとき,システムはそれを保持するか,それとも GC されるに任せるかを決定できる。 コマンド行[オプション] org.apache.tomcat.util.net.NioSelectorShared の値を false にセットしたときは,このオプションを使う。 デフォルト値は -1 (無制限)

command-line-options

次のコマンド行オプションが NIO コネクタに利用可能である:
-Dorg.apache.tomcat.util.net.NioSelectorShared=true|false
デフォルトは true である。 各スレッドごとに1個のセレクタを使いたいならば,この値を false にする。 false にセットしたときは, selectorPool.maxSelectors 属性を使ってセレクタのプールのサイズを制御できる。

oomParachute

(int) NIO コネクタは,パラシュート (parachute) と呼ばれる OutOfMemoryError 戦略を実装している。 コネクタは,ひとかたまりのデータをバイト配列として保持する。 メモリ不足 (OOM) のときは,このひとかたまりのデータを解放してからエラーを報告する。 これは Java VM に後処理のための十分な余地を与えるだろう。 oomParachute はパラシュート (バイト配列) のバイト単位のサイズを表す。 デフォルト値は 1024*1024(1MB) である。 これは Java ヒープ空間に関する OOM エラーにだけ働き,しかも回復可能かどうかは全く保証されていないことに注意されたい。 もしも Java ヒープ以外で OOM が起きたときは,このパラシュートのしかけは役に立たないだろう。

入れ子コンポーネント

今のところ無し。

特記事項
HTTP/1.1 と HTTP/1.0 のサポート

この Connector は RFC 2616 に記述された HTTP/1.1 プロトコルのすべての必要な機能をサポートする。 これには永続的な接続,パイプライン,expectation と chunked encoding を含む。 もしもクライアント (典型的にはブラウザ) が HTTP/1.0 だけをサポートするならば, Connector は優雅に縮退して,このプロトコルも同様にサポートする。 このサポートを有効にするために何ら特別な設定は必要ない。 Connector は HTTP/1.0 の keep-alive もサポートする。

RFC 2616 は,HTTP サーバがつねにレスポンスを,サーバがサポートすると主張する最高の HTTP バージョンで始めることを要請する。 したがって,この Connector はつねにレスポンスの最初で HTTP/1.1 を返す。

Proxy Support

Tomcat が proxy サーバの背後で動作しているときは, proxyName 属性と proxyPort 属性を使うことができる。 これらの属性は, しばしばリダイレクト用の絶対 URL を構築するために web アプリケーションが呼び出す request.getServerName() メソッドや request.getServerPort() メソッドの戻り値を変更する。 これらの属性を設定しないと,戻り値が,クライアントが元々リクエストをかけた [proxy の] サーバ名とポート番号ではなく, proxy サーバから接続を受け取った [背後の] サーバ名とポート番号になってしまう。

詳しい情報については Proxy Support HOW-TO を参照せよ。

SSL Support

secure 属性を true にセットすることにより, その Connector のインスタンスの SSL サポートを有効にできる。 このとき,さらに,次の属性を設定する必要があるかもしれない:

AttributeDescription
algorithm

使用する証明書エンコーディング・アルゴリズム。 デフォルトは Sun 実装 (SunX509)。 IBM JVM ならば IbmX509 という値を使うべきである。 他のベンダーについては,JVM ドキュメンテーションを調べて正しい値を得よ。

clientAuth

SSL スタックが接続を accept する前にクライアントから妥当な証明書チェーンを 要求するようにしたいならば,true にセットせよ。 SSL スタックがクライアント証明書を要求するようにしたいが,提示されなくても 失敗にはしないようにするならば,want にセットせよ。 (デフォルト値の) false は, CLIENT-CERT 認証を使ったセキュリティ制約で保護されているリソースを クライアントが要求しない限り,証明書チェーンを要求しない。 例については SSL HowTo を見よ。

keystoreFile

ロードすべきサーバ証明書を格納した keystore ファイルのパス名。 デフォルトでは,パス名は,Tomcat を実行しているユーザの オペレーティング・システム・ホーム・ディレクトリの ファイル ".keystore" である。

keystorePass

指定した keystore ファイルからサーバ証明書へアクセスするためのパスワード。 デフォルト値は "changeit"。

keystoreType

サーバ証明書のために使用する keystore ファイルのタイプ。 指定しなければ,デフォルト値は "JKS"。

sslProtocol

使用する SSL プロトコルのバージョン。 指定しなければ,デフォルトは "TLS"。

ciphers

使用できる暗号化方法 (cipher) のカンマ区切りの並び。 指定しなければ,利用可能な任意の暗号化方法が使用できる。

keyAlias

keystore 内のサーバ証明書を指すために使用するエイリアス。 指定しなければ,keystore 内で最初に読み取られたキーが使われる。

truststoreFile

クライアント証明書を検証するために使用する TrustStore ファイル。

truststorePass

TrustStore へアクセスするためのパスワード。 デフォルト値は keystorePass

truststoreType

もしも君が TrustStore に KeyStore とは別のフォーマットを使っているならば,この要素を追加せよ。

詳しい情報については SSL Configuration HOW-TO を参照せよ。

Connector Comparison

下記は各コネクタがどのように異なるかを示す小さなチャートである。

                  Java Blocking Connector       Java Nio Blocking Connector       APR Connector
    Classname         Http11Protocol                  Http11NioProtocol         Http11AprProtocol
    Tomcat Version   3.x 4.x 5.x 6.x                       6.x                     5.5.x 6.x
    Support Polling         NO                             YES                        YES
    Polling Size           N/A                   Unlimited - Restricted by mem        Unlimited
    Read HTTP Request     Blocking                     Blocking                       Blocking
    Read HTTP Body        Blocking                     Blocking                       Blocking
    Write HTTP Response   Blocking                     Blocking                       Blocking
    SSL Support           Java SSL                     Java SSL                       OpenSSL
    SSL Handshake         Blocking                     Non blocking                   Blocking
    Max Connections       maxThreads                   See polling size               See polling size
    
    
    

Copyright © 1999-2006, Apache Software Foundation