HTTP トランスポート・チャネルのカスタム・プロパティー
HTTP トランスポート・チャネルを使用している場合は、 そのチャネルの構成設定に、 以下のいずれかのカスタム・プロパティーを追加することができます。
- 管理コンソールで、
- 。 「Web コンテナー設定」の下の「 」をクリックします。
- 。 「HTTP プロキシー・サーバー設定」の下で、 をクリックし、 または のいずれかを選択してから、 をクリックします。
をクリックし、変更するチェーンのタイプに応じて、以下のいずれかのオプションを選択します。 - 「一般プロパティー」で、「名前」フィールドでカスタム・プロパティーの名前を、 「値」フィールドでこのプロパティーの値を指定します。 「説明」フィールドでこのプロパティーの説明を指定することもできます。
- 「適用」または「OK」をクリックします。
- 「保存」をクリックして、構成変更を保存します。
- サーバーを再始動してください。
- accessLogFormat
- CookiesConfigureNoCache
- DecompressionRatio制限
- DecompressionTolerance
- DoNotAllowDuplicateSetCookies
- EnableBuildBackupList
- HonorTransferEncoding
- limitFieldSize
- limitNumHeaders
- localLogFilenamePrefix
- loggingDisable
- PurgeDataDuringClose
- QuoteAddedNoCacheValue
- RemoveCLHeaderInTempStatusRespRFC7230compat
- RemoveServerHeader
- sameSiteラックス
- sameSiteなし
- sameSiteパーティション
- sameSiteStrict
- ServerHeaderValue
- trustedHeaderOrigin
- trustedSensitiveHeaderOrigin
- UseCaseSensitiveKeyMatcher
- v0CookieDateRFC1123compat
- WaitForEndOfMessage
accessLogFormat
accessLogFormat プロパティーは、HTTP トランスポート・チャネルの NCSA アクセス・ログに含める情報、およびその情報のフォーマット設定を指定する場合に使用します。 このプロパティーの値は、オプションのスペース区切りリストです。 オプションを指定する順序によって、ログにおけるこの情報のフォーマットが決まります。
個々のオプションは引用符で囲むことができますが、引用符が必須ではありません。 特に記載がない限り、オプションで要求された情報を入手できない場合、そのオプションには「-」という値が出力されます。
- %a
- リモート IP アドレス
- %A
- ローカル IP アドレス
- %b
- ヘッダーを除いた応答サイズ (バイト)
- %B
- ヘッダーを除いた応答サイズ (バイト)
値が見つからない場合、「-」ではなく 0 が出力されます。
- %{CookieName}Cまたは%C
- 中括弧内に指定した要求 Cookie。または、中括弧が含まれていない場合は、すべての要求 Cookie を出力します。
- %D
- 要求の経過時間 (ミリ秒の正確度、マイクロ秒の精度)
- %h
- リモート・ホスト
- %{HeaderName}i
- 要求の HeaderName ヘッダー値
- %m
- 要求メソッド
- %{HeaderName}o
- 応答の HeaderName ヘッダー値
- %q
- パスワードをエスケープして照会ストリングを出力します
- %r
- 要求の先頭行
- %{R}W
- 要求が受信された時点から応答の最初のバイト・セットが送信されるまでの要求のサービス時間 (ミリ秒の正確度、マイクロ秒の精度)。
- %s
- 応答の状況コード
- %t
- 要求の開始時刻の NCSA 形式
- %(t)W
- アクセス・ログへのメッセージがログに記録するためにキューに入れられた現在時刻 (標準 NCSA 形式)
- %u
- WebSphere Application Server 固有の $WSRU ヘッダーによるリモート・ユーザー
- %U
- 照会ストリングを含まない URL パス。
- %{X}W
- クロス・コンポーネント・トレース (XCT) のコンテキスト ID
例えば、このプロパティーの値として以下のディレクティブを指定できます。
%h "%{HeaderName}i" %u %t "%r" %s %b
- リモート・ホスト
- 要求の HeaderName ヘッダー値
- WebSphere 固有の $WSRU ヘッダーによるリモート・ユーザー
- 要求の開始時刻の NCSA 形式
- 要求の先頭行
- 応答の状況コード
- ヘッダーを除いた応答サイズ (バイト)
""
) は、これらの値にフィールド区切り文字ではないスペースを含めることができることを示しています。 これらのフィールドを二重引用符で囲んでいなくても、エラーにはなりません。 しかし、出力ファイルを処理する一部のプログラムでは問題が発生する可能性があります。CookiesConfigureNoCache
CookiesConfigureNoCache プロパティーを 使用すると、HTTP 応答メッセージ内に Set-Cookie ヘッダーがあった場合に、 複数のキャッシュ関連のヘッダーの追加を行うかどうかを指定できます。 このプロパティーが true に設定されている場合、非常に古い日付を持つ Expires ヘッダー、および Set-Cookie ヘッダーをキャッシュに入れないようクライアントに明示的に伝える Cache-Control ヘッダーが自動的に追加されます。 このプロパティーが false に設定されている場合は、これらのヘッダーは、自動的に追加されません。
このプロパティーは、本製品の以前のバージョンで使用可能であった com.ibm.websphere.cookies.no.header プロパティーと機能的に等価です。
情報 | 値 |
---|---|
データ・タイプ | ブール値 |
デフォルト | はい |
DecompressionRatio制限
decompressionRatioLimit
プロパティーを使用して、要求本体ペイロードの圧縮率に対する最大圧縮解除率を指定します。 HTTP チャネルは、要求本体を読み取り、本体の圧縮解除時に率を検証します。 圧縮解除率が構成された値を超え、 decompressionTolerance
に達した場合、チャネルは要求本体の圧縮解除を停止します。
情報 | 値 |
---|---|
デフォルト | 200 |
DecompressionTolerance
decompressionTolerance
プロパティーを使用して、構成された比率 ( decompressionRatioLimit
httpOption 属性で示される) を超える圧縮解除率を HTTP チャネルが許容する最大回数を指定します。 この値に達しても、後続の圧縮解除サイクルに比率制限を超える圧縮解除率が含まれている場合、HTTP チャネルは要求本体の圧縮解除を停止します。
情報 | 値 |
---|---|
デフォルト | 3 |
DoNotAllowDuplicateSetCookies
DoNotAllowDuplicateSetCookies プロパティーを使用して、HTTP チャネルが複数の Set-Cookie ヘッダーを同じ名前で送信しないようにします。 デフォルト値は false です。
情報 | 値 |
---|---|
デフォルト | 200 |
EnableBuildBackupList
EnableBuildBackupList プロパティーを使用して、HTTP チャネルがアクセスおよびエラー・ログ・ディレクトリー内のヒストリー・ファイルをスキャンできるようにして、作成されたより新しいログ・ファイルでこれらのファイルをロールオーバーします。
このプロパティーを true に設定すると、HTTP チャネルはアクセスおよびエラー・ログ・ディレクトリー内でヒストリー・ファイルをスキャンして、作成されたより新しいログ・ファイルでこれらのファイルをロールオーバーします。
- HTTP エラー・ログおよび NCSA アクセス・ログを構成した後、 ロギングを行う HTTP チャネルに対して「NCSA アクセス・ロギングを使用可能にする」フィールドが選択されていることを確認してください。 HTTP チャネルに対してこのフィールドが選択されていることを確認するには、 をクリックします。 この設定は、true に設定されたこのカスタム・プロパティーが HTTP チャネル機能に対して有効になる前に、有効にする必要があります。
- このカスタム・プロパティーを使用する場合は、NCSA アクセス・ロギングの構成設定で「チェーン固有のロギングを使用 (Use chain-specific logging)」オプションを選択する必要があります。 デフォルトでは、NCSA アクセス・ロギングについて「グローバル・ロギング・サービスの使用」オプションが選択されます。
情報 | 値 |
---|---|
データ・タイプ | ブール値 |
デフォルト | いいえ |
HonorTransferEncoding
HonorTransferEncoding プロパティーを使用して、チャンクが 1 つしかない場合に、HTTP トランスポート・チャネルがチャンク化されたメッセージを content-length で区切られたメッセージに変換する必要があるかどうかを示します。
このプロパティーを true に設定すると、HTTP トランスポート・チャネルは、メッセージが 1 つのチャンクのみで構成されている場合であっても、content-length メッセージに切り替える代わりにチャンクを書き出します。 この設定では、HTTP トランスポート・チャネルが 1 つのチャンク・メッセージごとに 2 回の書き出し (最初はメッセージに関する書き出し、2 回目はメッセージの終わりにマークを付けるゼロ・バイト・チャンクに関する書き出し) を行うため、パフォーマンスに影響があります。
このプロパティーを false に設定すると、HTTP トランスポート・チャネルは、チャンクが 1 つしかない場合に、チャンク化されたメッセージを content-length で区切られたメッセージに変換します。 この設定では、チャネルは content-length メッセージに変換される単一チャンク・メッセージに関する 1 回の書き出しのみを行うので、パフォーマンスが改善されます。
情報 | 値 |
---|---|
データ・タイプ | ブール値 |
デフォルト | いいえ |
limitFieldSize
limitFieldSize プロパティーを使用すると、 さまざまな HTTP フィールド (要求 URL や、 個々のヘッダー名または値など) に対するサイズ制限が行えます。 これらのフィールドに対してサイズ制限を行うと、 DoS 攻撃 (Denial of Service attack) に対する保護になります。 フィールドのサイズが許容値を超えると、 リモート・クライアントにエラーが戻されます。
情報 | 値 |
---|---|
データ・タイプ | 整数 |
デフォルト | 32768 |
範囲 | 50-32768 |
limitNumHeaders
limitNumHeaders プロパティーを使用すると、 着信メッセージに含めることができる HTTP ヘッダーの数を制限できます。 この制限を超えると、クライアントにエラーが戻されます。
情報 | 値 |
---|---|
データ・タイプ | 整数 |
デフォルト | 500 |
範囲 | 50 から 4000 まで |
localLogFilenamePrefix
localLogFilenamePrefix プロパティーを使用すると、 ネットワーク・ログ・ファイルのファイル名のプレフィックスを指定できます。 通常、イン・プロセス最適化が使用可能になっている場合、イン・プロセ ス・パスを通った要求は、Web コンテナーのネットワーク・チャネル・チェ ーンに設定されているログ属性に基づいてログされます。 このプロパティーを使用してネットワーク・ログ・ファイルのファイル名にプレフィックスを追加することができます。 この新しいファイル名は次にイン・プロセス要求のためのログ・ファイルのファイル名として使用されます。 イン・プロセス・パスを通って送信される要求はネットワーク・ログ・フ ァイルの代わりにこのファイルでログに記録されます。 例えば、ネットワーク・トランスポート・チェーンのログ・ファイル名が .../httpaccess.log とついており、このプロパティーがそのチェーンの HTTP チャネルで「local」に設定されている場合、そのチェーンに関連付けられたホストへのイン・プロセス要求のログ・ファイルのファイル名は …/localhttpaccess.log になります。
情報 | 値 |
---|---|
データ・タイプ | ストリング |
loggingDisable
このカスタム・プロパティーを使用して、指定したチェーンで NCSA、FRCA、およびエラーのロギングを使用不可にします。
情報 | 値 |
---|---|
データ・タイプ | ブール値 |
デフォルト | いいえ |
PurgeDataDuringClose
このカスタム・プロパティーは、HTTP チャネルが、接続を閉じる前に、読み取るデータがなくなるまでデータを読み取るようにする場合に使用します。
情報 | 値 |
---|---|
デフォルト | いいえ |
QuoteAddedNoCacheValue
このカスタム・プロパティーを使用して、引用符で囲まれた no-cache 属性を、この属性がまだ指定されていない Cache-Control 応答ヘッダーに追加します。
HTTP チャネルは、引用符で囲まれた no-cache 属性を正しくヘッダーに追加します。 次の例で、no-cache 属性は、応答で提供されたこのヘッダーに追加されます: Cache-Control: public, max-age=604800, no-cache="set-cookie"
。
情報 | 値 |
---|---|
デフォルト | いいえ |
RemoveCLHeaderInTempStatusRespRFC7230compat
RemoveCLHeaderInTempStatusRespRFC7230compat
プロパティーを使用して、HTTP チャネルが情報状況 1xx
または 204
の応答メッセージで Content-Length ヘッダーを送信しないようにします。
情報 | 値 |
---|---|
デフォルト | いいえ |
RemoveServerHeader
RemoveServerHeader プロパティーを使用すると、アプリケーション・サーバーから送信された HTTP 応答から、サーバー・ヘッダーを強制的に除去できます。これにより、サーバー・プログラムの ID を非表示にできます。
情報 | 値 |
---|---|
データ・タイプ | ブール値 |
デフォルト | いいえ |
sameSiteLax
このプロパティーを使用して、SameSite 属性に設定されている Lax
値に対する Cookie 名またはパターンのリストを指定します。
単一のワイルドカード文字 (*) を、スタンドアロン値として指定することも、Cookie 名の接頭部の後の文字として指定することもできます。 リスト内の Cookie 名またはパターンはすべて固有でなければなりません。 また、 SameSite 属性に None
値または Strict
値を指定することによって作成される構成の中に含まれる Cookie 名またはパターンを指定することはできません。
sameSiteNone
このプロパティーを使用して、SameSite 属性に設定されている None
値に対する Cookie 名またはパターンのリストを指定します。
単一のワイルドカード文字 (*) を、スタンドアロン値として指定することも、Cookie 名の接頭部の後の文字として指定することもできます。 リスト内の Cookie 名またはパターンはすべて固有でなければなりません。 また、 SameSite 属性に Lax
値または Strict
値を指定することによって作成される構成の中に含まれる Cookie 名またはパターンを指定することはできません。 この構成の結果として SameSite 値 None
を含むように変更された各 Cookie には、Secure
属性も設定されます。
true
に設定する必要が生じることがあります。sameSiteパーティション
このプロパティーは、 SameSite 属性が None
に設定されている場合に、Partitioned 属性を Cookie に追加するために使用します。
このプロパティーの true
値は、パーティション属性が追加されることを指定します。
このプロパティーはブラウザーに依存します。 詳しくは、 サポートされるブラウザーのリストを参照してください。
情報 | 値 |
---|---|
データ・タイプ | ブール値 |
デフォルト | いいえ |
sameSiteStrict
このプロパティーを使用して、SameSite 属性に設定されている Strict
値に対する Cookie 名またはパターンのリストを指定します。
単一のワイルドカード文字 (*) を、スタンドアロン値として指定することも、Cookie 名の接頭部の後の文字として指定することもできます。 リスト内の Cookie 名またはパターンはすべて固有でなければなりません。 また、 SameSite 属性に Lax
値または None
値を指定することによって作成される構成の中に含まれる Cookie 名またはパターンを指定することはできません。
ServerHeaderValue
ServerHeaderValue プロパティーを使用して、サーバー・ヘッダーがまだ存在しない場合にサーバーによってすべての発信 HTTP 応答に追加されるサーバー・ヘッダーのデフォルト値を置き換えます。 サーバー・ヘッダーのデフォルト値は WebSphere Application Server v/x.x です。ここで、x.x はご使用のシステムで実行中の WebSphere Application Server のバージョンです。
バージョン 8.5.0.2 より前では、サーバー・ヘッダーが存在しない場合は、デフォルトのサーバー・ヘッダーまたはこのプロパティーの値として指定したヘッダーのいずれかが、サーバーによってすべての発信 HTTP 応答に追加されます。
バージョン 8.5.0.2 から、サーバー・ヘッダーが存在しない場合に、サーバー・ヘッダーがすべての発信 HTTP 応答に自動的に追加されることはなくなっています。 値を指定してこのプロパティーを追加すると、応答に表示されるサーバー・ヘッダーにその値が含まれます。 値 DefaultServerValue を指定した場合、WebSphere Application Server v/x.x がサーバー・ヘッダー値として使用されます。
情報 | 値 |
---|---|
データ・タイプ | ストリング |
trustedHeaderOrigin
trustedHeaderOrigin
カスタム・プロパティーは、プライベート・ヘッダーを受信するためのアクセス制御リストとして機能します。 例えば、$WSPR プライベート・ヘッダーはプロキシー・サーバーによって送信されます。
フィックスパック 9.0.5.7 より前は、このプロパティーは、コンマ区切りの IP アドレス、値 *、または値 none のリストを受け入れます。 ただし、フィックスパック 9.0.5.7 より前は、リストでホスト名は許可されません。 このリストは、 WebSphere Application Server プライベート・ヘッダーをサーバーに送信することが許可されているプロキシー・サーバーの IP アドレスを示します。 値が *の場合は、すべてのリモート・ホストがプライベート・ヘッダーを送信できます。 しかし、値が none の場合、いずれのリモート・ホストにもプライベート・ヘッダーを送信することが許可されません。
このプロパティーは、コンマ区切りの IP アドレスとホスト名のリスト、値 *、または値 noneを受け入れます。 このリストは、 WebSphere Application Server プライベート・ヘッダーをサーバーに送信することが許可されているプロキシー・サーバーの IP アドレスまたはホスト名を示します。 値が *の場合は、すべてのリモート・ホストがプライベート・ヘッダーを送信できます。 しかし、値が none の場合、いずれのリモート・ホストにもプライベート・ヘッダーを送信することが許可されません。
*
値を含めることができますが、制限があります。 IP アドレスは、短縮することができず、各フィールドに値が含まれている必要があります。 例えば、値 127.0.0.*
および 0:0:0:0:0:ffff:*:*
は、IP アドレスとして有効な表現です。 ワイルドカードを使用するホスト名は、値 *
で開始する必要があります (例えば、*.ibm.com
)。 以下の例で、ワイルドカードが含まれた有効なリストを示します。localhost, 127.0.0.1, 192.168.*.*, 0:0:0:0:0:ffff:*:*, *.ibm.com, www.example.com
Web コンテナー・カスタム・プロパティー trusted が falseに設定されている場合、 trustedHeaderOrigin
プロパティーの設定に関係なく、インバウンド用のプライベート・ヘッダーは処理されません。 さらに、 trustedSensitiveHeaderOrigin
カスタム・プロパティーで定義されている IP アドレスは、 trustedHeaderOrigin
プロパティーの設定に関係なく、非センシティブ・プライベート・ヘッダーを送信するために暗黙的に信頼されます。
情報 | 値 |
---|---|
データ・タイプ | ストリング |
デフォルト | * |
trustedSensitiveHeaderOrigin
trustedSensitiveHeaderOrigin
カスタム・プロパティーは、プロキシー・サーバーによって送信される機密情報のプライベート・ヘッダーを受信するためのアクセス制御リストとして機能します。
フィックスパック 9.0.5.7 より前は、このプロパティーは、コンマ区切りの IP アドレス、値 *、または値 none のリストを受け入れます。 ただし、フィックスパック 9.0.5.7 より前は、リストでホスト名は許可されません。 このリストは、機密性の高い WebSphere Application Server プライベート・ヘッダーをサーバーに送信することが許可されているプロキシー・サーバーの IP アドレスを示します。 このプロパティーが *に設定されている場合、すべてのリモート・ホストがプライベート・ヘッダーを送信できます。 しかし、値が none に設定されている場合、いずれのリモート・ホストにもプライベート・ヘッダーを送信することが許可されません。
このプロパティーは、コンマ区切りの IP アドレスとホスト名のリスト、値 *、または値 noneを受け入れます。 このリストは、機密性の高い WebSphere Application Server プライベート・ヘッダーをサーバーに送信することが許可されているプロキシー・サーバーの IP アドレスまたはホスト名を示します。 値が *の場合は、すべてのリモート・ホストがプライベート・ヘッダーを送信できます。 しかし、値が none の場合、いずれのリモート・ホストにもプライベート・ヘッダーを送信することが許可されません。
*
値を含めることができますが、制限があります。 IP アドレスは、短縮することができず、各フィールドに値が含まれている必要があります。 例えば、値 127.0.0.*
および 0:0:0:0:0:ffff:*:*
は、IP アドレスとして有効な表現です。 ワイルドカードを使用するホスト名は、値 *
で開始する必要があります (例えば、*.ibm.com
)。 以下の例で、ワイルドカードが含まれた有効なリストを示します。localhost, 127.0.0.1, 192.168.*.*, 0:0:0:0:0:ffff:*:*, *.ibm.com, www.example.com
Web コンテナー・カスタム・プロパティー trusted が falseに設定されている場合、このプロパティーの設定に関係なく、インバウンド用のプライベート・ヘッダーは処理されません。
情報 | 値 |
---|---|
データ・タイプ | ストリング |
デフォルト | none |
SustainedHighVolumeLogging
SustainedHighVolumeLogging プロパティーは、ロギング・コードが項目のバックログを処理できるようにする場合に使用します。 このプロパティーは、管理コンソールで設定します。
をクリックします。UseCaseSensitiveKeyMatcher
UseCaseSensitiveKeyMatcher は、accessLogFormat と共に使用されます。
このプロパティーを true に設定すると、accessLogFormat で使用される Key Matcher での大/小文字の区別を許可します。 これは、ディレクティブが小文字と大文字の両方で存在する場合に対処します。
情報 | 値 |
---|---|
デフォルト | いいえ |
v0CookieDateRFC1123compat
v0CookieDateRFC1123compat プロパティーを使用して、「V0 Set-Cookie ヘッダー満了」属性の値が 2 桁の年形式でなく 4 桁の年形式で指定されていることを示します。
デフォルトでは、「V0 Set-Cookie ヘッダー満了」属性の値は 2 桁の年形式で使用されます。 以前の RFC1123 を使用する必要がある場合は、v0CookieDateRFC1123compat プロパティーを true に設定します。この場合、「V0 Set-Cookie 満了」属性の値は 4 桁の年形式にする必要があります。
情報 | 値 |
---|---|
データ・タイプ | ブール値 |
デフォルト | いいえ |
WaitForEndOfMessage
このカスタム・プロパティーを使用して、応答の処理を開始する前に、チャネルに、メッセージ終結が読み取られるのを待機させます。
情報 | 値 |
---|---|
デフォルト | いいえ |