1.3. HTTPサーバ

WebOTX では、Javaベースの内蔵Webサーバのほかに、ApacheベースのWebサーバ (以降「WebOTX Webサーバ」と記載します)をバンドルしています。 WebOTX Webサーバは、インストール時の指定によりVer2.2 (Apache HTTP Server 2.2 ベース)またはVer2.4(Apache HTTP Server 2.4ベース)を選択してインストールすることができます。

WebOTXでは、その他に利用可能なWebサーバとして、IIS/Apache などの外部Webサーバをサポートしています。

WebOTX AS Express インストール時のデフォルト設定は、Javaベースの内蔵Webサーバを利用し、 WebOTX AS Standard/Enterprise インストール時のデフォルト設定は、WebOTX Webサーバを利用します。 WebOTX にバンドルされたWebサーバを利用する場合、インストール後に設定する項目は 特にありません。 外部Webサーバを利用する場合には、インストール後に「環境設定ツール」を起動し、外部Webサーバとの連携設定を行う必要があります。

1.3.1. Javaベース内蔵Webサーバ設定方法

項目の設定

Javaベースの内蔵Webサーバの設定方法については、次の2通りがあります。

Webコンテナ管理コンソールによる設定

Webコンテナの運用管理コンソールの「コネクタ」項目で、Javaベースの内蔵Webサーバの設定ができます。コネクタの「種類」が"HTTP"と表示されているものが内蔵Webサーバです。詳細は「1.4. Webコンテナ」を参照してください。

MOによる参照と設定

Javaベースの内蔵Webサーバの設定は、WebコンテナのMOを介してもアクセス可能です。対象となる MO の Dottedname は「server.http-service.http-listener.http-listener-name」です。属性 protocol の値が "HTTP/1.1" となっているものが内蔵Webサーバです。詳細は「1.4. Webコンテナ」を参照してください。

1.3.1.1. SSL通信の設定方法

詳細は「1.15. 共通SSL設定」を参照してください。

※内蔵WebサーバのCoyoteコネクタを使用する場合はSSL通信が可能ですが、Grizzlyコネクタを使用する場合はhttps通信のみサポートしており、SSL通信は利用することができません。

1.3.2. WebOTX Webサーバ設定方法

ここでは、WebOTXで利用するWebサーバとして、「WebOTX Webサーバ」を利用する場合の設定方法について記載します。その他の外部Webサーバを利用する場合については、「1.3.4. 外部Webサーバ設定方法」項目を参照してください。

WebOTXの運用管理コマンドでは、WebOTX Webサーバの定義情報の変更/参照およびWebサーバの起動/停止ができます。また、従来どおり定義情報ファイル (httpd.conf)をエディタで編集して、定義情報の更新することもできます。

なお、 Javaベースの内蔵Webサーバの設定については、「1.4. Webコンテナ」を参照してください。

項目の設定

WebOTX Webサーバの定義情報を設定(変更)するには、otxadmin コマンドを利用するか、WebOTX Webサーバの定義情報ファイル(httpd.conf) を直接編集します。

>otxadmin set --user admin --password adminadmin server.WebServer.属性名=設定値

${INSTANCE_ROOT}/config/WebServer/httpd.conf

設定項目の詳細については、ApacheのマニュアルまたはWebサイトを参照してください。

例えば、WebOTX Webサーバが利用するポート番号を80番から8080番に変更する場合には、 次の方法を利用します。

otxadmin コマンド利用時
>otxadmin set --user admin --password adminadmin server.WebServer.port=8080

httpd.conf 直接編集時
  #Listen 80
  Listen 8080

SSL(HTTPS)通信用の設定について

HTTPS通信を行うには、SSL通信用のモジュールのインストールと、次節のMO設定においてSSL通信を行うかどうかの設定 (security_enabled )を、「有効」(ture)に設定する必要があります。

>otxadmin set --user admin --password adminadmin server.WebServer.security-enabled=true

なお、SSL(HTTPS)通信に関する定義情報を変更する場合は

${INSTANCE_ROOT}/config/WebServer/ssl.conf

の設定項目を変更する必要があります。

また、SSL通信用のポート番号を複数設定する場合、それぞれのポート番号に 対して、<VirtualHost>の設定がそれぞれ必要となります。
SSL通信用のポート番号を複数設定する場合には、SSL通信用の定義情報ファイル (ssl.conf)を直接編集してください。

運用管理ツール/コマンドからの定義情報の更新は、定義情報ファイル(httpd.conf)に対してのみ行われます。
SSL通信用の定義情報ファイル(ssl.conf)に対して運用管理ツール/コマンドから定義情報の更新はできません。SSL通信用の定義情報ファイルに定義されている情報を更新/追加する場合は、エディタ等を利用して直接編集してください。

1.3.2.1. MOで設定可能な項目一覧

以下はMOから設定可能なWebOTX Webサーバの定義情報項目の一覧です。

各定義情報は、${INSTANCE_ROOT}/config/WebServer/httpd.conf または${INSTANCE_ROOT}/config/WebServer/ssl.conf を直接編集することでも変更可能です。

Dottedname : server.WebServer

表1.3.2.1-1
属性名
(attribute-name)
説 明 http.confの
指示子
既定値
serverroot HTTPサーバが動作するルートディレクトリ
参照のみ可能です
ServerRoot ${INSTANCE_ROOT}
conf-file 定義情報ファイル(httpd.conf)のパス
参照のみ可能です
(MOでのみ参照) ${INSTANCE_ROOT}/config/
WebServer/httpd.conf
port HTTPサーバが利用するポート番号 Listen 80
Version HTTPサーバのバージョン情報
参照のみ可能です
(MOでのみ参照) (2.2)2.2.31
(2.4)2.4.18
ServerName HTTPサーバのサーバ名
参照のみ可能です
ServerName localhost
DocumentRoot ブラウザが表示するルートディレクトリ
参照のみ可能です
DocumentRoot ${INSTANCE_ROOT}/docroot
ErrorLog HTTPサーバのエラーログ ErrorLog ${INSTANCE_ROOT}/logs/
web/error.log
MaxClients 最大同時接続クライアント数 (Windows)
ThreadsPerChild
250
(UNIX)MaxClients
security-enabled SSL(HTTPS)通信を行うかどうか
false
ssl-conf-file SSL用の定義ファイル
参照のみ可能です
(MOでのみ参照) ${INSTANCE_ROOT}/config/
WebServer/ssl.conf
ssl-port SSL用のポート Listen
(ssl.conf)
443
http2-enabled HTTP/2プロトコルを使用するかどうか
false


1.3.2.2. 定義情報ファイル

WebOTX Webサーバの定義情報は、定義情報ファイル(httpd.conf)に格納され、WebOTX Webサーバ起動時に読み込まれます。

定義情報ファイルは、WebOTX のドメイン毎に格納されるため、ドメイン毎に 定義情報を変更する必要があります。

定義情報を更新した場合には、WebOTX Webサーバの再起動が必要になります。

格納場所
  ${INSTANCE_ROOT}/config/WebServer/httpd.conf

なお、SSL通信用ライブラリをインストールした場合、SSL設定に関する 定義情報は、ssl.confファイルに格納されます。

SSL通信で利用するポート番号や証明書/秘密鍵ファイルを設定/変更する場合、 このファイルに定義された情報を変更する必要があります。

格納場所
  ${INSTANCE_ROOT}//config/WebServer/ssl.conf

1.3.2.3. 基本定義

ここでは、WebOTX Webサーバが動作するために必要となる定義情報について 説明します。
定義情報ファイルには、次の定義が最低でも含まれている必要があります。

1.3.2.3.1. ServerRoot
表1.3.2.3-1
名前 ServerRoot
説明 WebOTX Webサーバが動作するために必要となるディレクトリを設定します。 この値は既定値以外の値に変更することはありません。
書式 ServerRoot directory-path
設定例
(既定値)
(Windows)
 ServerRoot "C:/WebOTX/domains/domain1"

(UNIX)
 ServerRoot /opt/WebOTX/domains/domain1
1.3.2.3.2. Listen
表1.3.2.3-2
名前 Listen
説明 WebOTX Webサーバが利用するリクエスト受付用のポート番号を指定します。 Listen 指示子は、 ポート番号だけを設定する 方法と、IPアドレスとポート番号を一緒に設定する方法があります。
UNIX 版において、インストール時に「WebOTX 運用ユーザを利用する」を指定した 場合、1024 以下のポート番号を設定することはできません。
書式 Listen [IPアドレス:]port
Port port
設定例

(ポート番号 8080 を利用する場合の設定)
  Listen 8080

(特定のIPアドレスに対して待ち合わせを行う場合の設定)
  Listen 192.168.0.1:80

(IPv4アドレスとIPv6アドレスで同一のポート番号を 指定する場合の設定)
  Listen 0.0.0.0:80
  Listen [::]:80

1.3.2.3.3. User/Group
表1.3.2.3-3
名前 User
Group
説明 (UNIXでのみ有効)
User/Group 指示子は UNIX 版においてのみ有効です。 WebOTX Webサーバがリクエストに応答する際に用いる ユーザID および グループID を指定します。
WebOTX Application Server のインストール時に「WebOTX 運用ユーザ」を 利用する選択をした場合には、この設定値を「WebOTX 運用ユーザ」に変更する 必要があります。
書式 User unix-user-id
Group unix-group-id
設定例 User otxadmin
Group otxadm
1.3.2.3.4. DocumentRoot
表1.3.2.3-4
名前 DocumentRoot
説明 ブラウザが WebOTX Webサーバ にアクセスした場合の ルートディレクトリを指定します
書式 DocumentRoot directory-path
設定例
(既定値)
(Windows)
  DocumentRoot "C:/WebOTX/domains/domain1/docroot"

(UNIX)
  DocumentRoot /opt/WebOTX/domains/domain1/docroot
1.3.2.3.5. ErrorLog
表1.3.2.3-5
名前 ErrorLog
説明 WebOTX Webサーバ の内部で発生したエラー情報を記録する ファイル名を指定します。
書式 ErrorLog errorlog-path
設定例
(既定値)
(Windows)
  ErrorLog logs/web/error.log

(UNIX)
  ErrorLog logs/web/error_log
1.3.2.3.6. LoadModule
表1.3.2.3-6
名前 LoadModule
説明 様々な機能を提供するモジュールをロードし、使用モジュールリストに 追加します。
書式 LoadModule module-name module-path
設定例 (Windows)
  LoadModule ssl_module  "C:/WebOTX/WebServer24/modules/mod_ssl.so"

(UNIX)
  LoadModule ssl_module  /opt/WebOTX/WebServer24/modules/mod_ssl.so

1.3.2.4. サーバ動作に関する設定

ここでは、WebOTX Webサーバの動作プロセス数に関する設定を説明します。

Windows 版は、1つの子プロセス上で複数スレッドが動作し、各スレッド上で クライアントからのリクエストを受け付けます。つまり、1リクエストに対して、 1スレッドが割り当てられます。

UNIX 版は、worker と呼ばれる方式を採用しており、複数の子プロセスが動作し、 さらに、その子プロセス上で複数のスレッドが動作し、各子プロセスのスレッド上 でクライアントからのリクエストを受け付けます。つまり、1リクエストに対して、 1スレッドが割り当てられます。

上記のような動作の違いにより、Windows 版と UNIX 版では、定義内容が 異なります。また、 2.2 でも定義内容が異なる場合があります。
動作プロセスに関連する主な設定は次の指示子となります。

1.3.2.4.1. MaxClients
表1.3.2.4-1
名前 MaxClients
説明 (UNIXでのみ有効)
WebOTX Webサーバが処理できる最大同時接続コネクション数を設定します。 この値はリクエストに応じることのできる全スレッドの総数となります。
クライアントは、この値を超えて同時に接続することはできません。
この値を超えて接続要求がきた場合には、その接続要求は、OS側のListenBackLog キューに保留されます。
書式 MaxClients number
設定例
(既定値)
MaxClients 250
1.3.2.4.2. ThreadsPerChild
表1.3.2.4-2
名前 ThreadsPerChild
説明 Windows版と UNIX版で意味が異なります。
Windows版の場合、プロセス内で動作するスレッド数となり、WebOTX Webサーバが処理できる最大同時接続コネクション数を意味します。
UNIX版の場合、1つのプロセス内で動作するスレッド数を意味します。 UNIX版で本設定値に64以上の値を設定する場合は、ThreadLimit 値も 変更してください。
書式 ThreadsPerChild number
設定例
(既定値)
(Windows)
  ThreadsPerChild 250

(UNIX)
  ThreadsPerChild 25
1.3.2.4.3. MinSpareThreads / MaxSpareThreads
表1.3.2.4-3
名前 MinSpareThreads
MaxSpareThreads
説明 (UNIX)
アイドル状態であるスレッドの最小値、最大値を設定します。 アイドル状態とは、リクエストを処理していない状態の ことです。アイドル状態では、この範囲内に総スレッド数が 収まるように、起動しているプロセス数が常に調整されます。

MaxSpareThreads 以上のリクエストを受け付けると、 超過したリクエストを処理するために子プロセスの起動/停止 処理が行われるので、子プロセスの総数が増減する場合があります。
リクエストの増加により、子プロセスの増減を行いたくない 場合は、この設定値を MaxClinets と同じ値に設定してください。

また、Webサーバ 起動時に MinSpareThreads 以上のスレッドが起動しなかった場合、 通常 MaxClients 以上のリクエストを受けた時に出力される 「server reached MaxClients setting, consider raising the MaxClients setting」 のメッセージが出力される場合があります。 ThreadsPerChild/ThreadLimit/StartServers の値を確認して、 Webサーバ起動時の総スレッド数が MinSpareThreads 以上の値 になるように調整してください。
書式 MinSpareThreads number
MaxSpareThreads number 
設定例
(既定値)
MinSpareThreads 25
MaxSpareThreads 75
1.3.2.4.4. StartServers
表1.3.2.4-4
名前 StartServers
説明 (UNIX でのみ有効)
起動時に生成される子プロセス数を設定します。
なお、mod_cgid モジュールがロードされている場合には、CGIプログラム実行用の 子プロセスがあらかじめ起動するため、総子プロセス数は本設定値+1 となります。
書式 StartServers number 
設定例(既定値) StartServers 2
1.3.2.4.5. ServerLimit / ThreadLimit
表1.3.2.4-5
名前 ServerLimit
ThreadLimit
説明 (UNIX)
子プロセスの上限値(ServerLimit)、子プロセス内で 動作するスレッドの上限値(ThreadLimit)を設定します。
ThreadsPerChild 値に 64以上の値を設定する場合には、 ThreadLimit にもその値以上の値を設定してください。
書式 ServerLimit number
ThreadLimit number
設定例 ServerLimit 16
ThreadLimit 64
1.3.2.4.6. MaxRequestsPerChild
表1.3.2.4-6
名前 MaxRequestsPerChild
説明 個々の子サーバプロセスが稼働中に扱うリクエスト数の 上限を設定します。ここで指定した数のリクエストを受け付けた後で、 その子プロセスは終了します。
0を指定した場合、そのプロセスはリクエスト数の 上限を超えたことにより終了することはありません。
書式 MaxRequestsPerChild number
設定例 MaxRequestsPerChild 0

1.3.2.5. SSL 定義

ここでは SSL通信を行う場合、定義情報ファイルに定義する 主な設定を説明します。
SSLに関する設定は、ssl.confファイルに格納されています。 ssl.confファイルは、SSL通信用パッケージをインストール することで追加されます。

1.3.2.5.1. SSLEngine
表1.3.2.5-1
名前 SSLEngine
説明 SSLを有効にする。通常、<VirtualHost> 内で使用され、特定の仮想ホストに対してSSLを有効にします。
書式 SSLEngine On|Off
設定例 <VirtualHost _default_:443>
  SSLEngine on
  ...
</VirtualHost>
1.3.2.5.2. SSLCertificateFile
表1.3.2.5-2
名前 SSLCertificateFile
説明 SSLで利用するサーバの証明書ファイルを設定します。
書式 SSLCertificateFile path
設定例 SSLCertificateFile /opt/WebOTX/WebServer24/conf/ssl.crt/sample.crt
1.3.2.5.3. SSLCertificateKeyFile
表1.3.2.5-3
名前 SSLCertificateKeyFile
説明 SSLで利用するサーバの秘密鍵ファイルを設定します。
書式 SSLCertificateKeyFile path
設定例 SSLCertificateKeyFile /opt/WebOTX/WebServer24/conf/ssl.key/sample.key
1.3.2.5.4. SSLCACertificateFile
表1.3.2.5-4
名前 SSLCACertificateFile
説明 クライアント認証を行う場合、SSLで利用するクライアントの証明書ファイルを設定します。
書式 SSLCACertificateFile path
設定例 SSLCACertificateFile /opt/WebOTX/WebServer24/conf/ssl.key/client.crt
1.3.2.5.5. SSLVerifyClient
表1.3.2.5-5
名前 SSLVerifyClient
説明 クライアント認証を行う場合、クライアント側での証明書の提示方式を設定します。
書式 SSLVerifyClient level
設定例 (クライアント認証を行わない場合)
  SSLVerifyClient none

(クライアントに有効な証明書を提示させる場合)
  SSLVerifyClient require
1.3.2.5.6. SSLOptions
表1.3.2.5-6
名前 SSLOptions
説明 SSL 動作に関連する各オプションを設定します。
書式 SSLOptions [+|-]option ...
設定例 (クライアント認証で、SSL用の環境変数の設定とクライアント証明書のエクスポートを行う)
  SSLOptions +StdEnvVars +ExportCertData

1.3.2.6. ユーザ認証、アクセス制御

ここでは WebOTX Webサーバがサポートするユーザ認証機能と、 クライアントのアクセス制御に関する設定を記述します。

1.3.2.6.1. AuthType
表1.3.2.6-1
名前 AuthType
説明 ユーザ認証の種類を設定します。Basic と Digest が設定可能です。
書式 AuthType Basic|Digest
設定例 AuthType Basic
1.3.2.6.2. AuthName
表1.3.2.6-2
名前 AuthName
説明 HTTP認証の認可領域の名前を指定します。 ここで指定した文字列は、ほとんどのブラウザの「パスワードダイアログ」 に表示されます。
書式 AuthName auth-domain
設定例 AuthName "Top Secret"
1.3.2.6.3. AuthUserFile
表1.3.2.6-3
名前 AuthUserFile
説明 認証に使用するユーザとパスワードの一覧が格納されている テキストファイルを指定します。
通常、htpasswd コマンドで作成したパスワードファイルへの パスを指定します。
書式 AuthUserFile file-path
設定例 AuthUserFile /usr/local/apache/passwd/passwords
1.3.2.6.4. Require
表1.3.2.6-4
名前 Require
説明 認証済みユーザがリソース(ディレクトリ)に アクセスすることができるかを指定します。
書式 Require entity-name [entity-name] ...
設定例 (全ての認証されたユーザにディレクトリへのアクセスを許可する場合)
  Require valid-user

(指定されたユーザ(admin)のみディレクトリのアクセスを許可する場合)
  Require user admin
1.3.2.6.5. Order
表1.3.2.6-5
名前 Order
説明 デフォルトのアクセス可能な状態と、Allow と Deny が評価される順番を制御します。
書式 Order ordering
設定例 (以下の例では、Allow from all の後で Deny from foo.domain.com が設定されるため、 foo.domain.com 以外のクライアントからの アクセスを許可します。)
  Order Allow,Deny
  Allow from all
  Deny from foo.domain.com

(以下の例では、Deny from foo.domain.com の後で Allow from all が設定されるため、すべてのクライアント からのアクセスを許可します。)
  Order Deny,Allow
  Allow from all
  Deny from foo.domain.com
1.3.2.6.6. Allow / Deny
表1.3.2.6-6
名前 Allow
Deny
説明 サーバの特定の領域にアクセスできるホスト(クライアント)を制御します。
Allow はアクセスを許可するクライアントを、 Deny はアクセスを拒否するクライアントを指定します。
すべてのクライアント(all)、ドメイン名(domain.com)、 IPアドレス(12.34.56.78)、IPアドレスの一部(12.34) およびネットワーク/ネットワークマスクの対 (12.34.0.0/255.255.0.0または12.34.0.0/16)を 指定することができます。
書式 Allow from all|host|env=env-variable
Deny from all|host|env=env-variable
設定例 (以下の例では、foo.domain.com サブドメインにある クライアント以外の domain.com ドメインのすべてのクライアントから アクセスが許可されます。)
  Order Allow,Deny
  Allow from domain.com
  Deny from foo.domain.com

(次の3つの設定は同じアドレス群に対するアクセス許可 の設定となります。)
  Allow from 10.1
  Allow from 10.1.0.0/255.255.0.0
  Allow from 10.1.0.0/16

1.3.2.7. LDAP 連携

LDAP連携する場合に必要となる定義情報を記載します。

1.3.2.7.1. AuthLDAPUrl
表1.3.2.7-1
名前 AuthLDAPUrl
説明 LDAP連携で使用するLDAPサーバのDN情報をURLで指定します。
書式 AuthLDAPUrl ldap://host:port/basedn?attributes?scope?filter
設定例 (ドメインのdocrootに対するアクセスに対して LDAP認証をかける場合、次の設定を行います。連携するLDAPサーバ上に、 DN情報として、dc=users, dc=webotx, o=NEC, c=JP が設定されているとします。)

<Directory /opt/WebOTX/domains/domain1/docroot>
  AuthType Basic
  AuthName "Input a username and password."
  AuthLDAPUrl ldap://ldap-server/dc=users,dc=webotx,o=NEC,c=JP?uid?sub
  Require valid-user
</Directory>
 

1.3.2.8. ログ出力

WebOTX Webサーバが出力するログ情報に関する定義情報について説明します。

1.3.2.8.1. ErrorLog
表1.3.2.8-1
名前 ErrorLog
説明 エラーログファイルの出力先と名前を設定します。
エラーログには、リクエスト処理中に発生したエラーがすべて出力されます。 また、サーバ起動時やサーバ動作に問題が発生した場合にも、このファイル にエラーが出力されます。
書式 ErrorLog file-path
設定例
(既定値)
(Windows)
  ErrorLog logs/web/error.log

(UNIX)
  ErrorLog logs/web/error_log
1.3.2.8.2. CustomLog
表1.3.2.8-2
名前 CustomLog
説明 アクセスログファイルの出力先と名前、書式を設定します。
書式 CustomLog file-path|pipe format|nickname
設定例
(既定値)
(Windows)
  CustomLog logs/web/access.log common
  CustomLog  "C:/WebOTX/domains/domain1/logs/web/ssl_request.log" \
  "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x  \"%r\" %b"

(UNIX)
  CustomLog logs/web/access_log common
  CustomLog  /opt/WebOTX/domains/domain1/logs/web/ssl_request_log \
  "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x  \"%r\" %b"
1.3.2.8.3. LogFormat
表1.3.2.8-3
名前 LogFormat
説明 アクセスログに出力するログの出力書式を設定します。 アクセスログ情報には、クライアントのIPアドレス、URL、送信バイト数、 処理時間等を出力することができます。
書式 LogFormat format|nickname
設定例
(既定値)
LogFormat "%h %l %u \"%r\" %>s %b %D" common

上記の設定値の意味は以下の通りです。
設定値 説明
%h アクセスを行ったマシンのホスト名(または IPアドレス) が表示される。
%l リモートログ名。通常は’-‘が表示される。
%u 認証リモートユーザ名。 認証処理を行った場合に、そのユーザ名が表示される。
%r リクエストの最初の行。
%>s HTTP ステータス。リクエストが正常終了の場合、 200 が出力される。
%b HTTPヘッダ以外のサーバからクライアントに送られた バイト数。
%D リクエストの処理時間(マイクロ秒単位)
common このログフォーマットを表すニックネーム。 CustomLog指示子に、このニックネームを指定することで このニックネームで設定されたログフォーマット情報が出力される。
設定可能なフォーマット
設定値 説明
%a リモートIPアドレス
%A ローカルIPアドレス
%b サーバからクライアントに送信されたバイト数(HTTPヘッダ以外)。 CLF書式。
1バイトも送信されなかった場合は 0 ではなく、 '-' が出力される。
%B サーバからクライアントに送信されたバイト数(HTTPヘッダ以外)
%D リクエストを処理するのにかかった時間、 マイクロ秒単位
%{FOOBAR}e 環境変数 FOOBAR の内容
%f ファイル名
%h リモートホスト
%H リクエストプロトコル
%{Foobar}i サーバに送られたリクエストの Foobar: ヘッダの内容
%l (もしあれば、identd からの)リモートログ名
%m リクエストメソッド
%{Foobar}n 他のモジュールからのメモ Foobar の内容
%{Foobar}o 応答の Foobar: ヘッダの内容
%p リクエストを扱っているサーバの正式なポート番号
%P リクエストを扱った子プロセスのプロセスID
%q 問い合わせ文字列(存在する場合は前に ? が追加される。そうでない場合は空文字列)
%r リクエストの最初の行
%s HTTPステータスコード。
内部でリダイレクトされたリクエストは、元々のリクエスト のステータスが表示される。 最後のステータスを表示する場合は %>sと設定する。 正常終了の場合200が出力される。
%t 時刻。CLFの時刻の書式(標準の英語の書式)
%{format}t Formatで与えられた書式による時刻。
%T リクエストを扱うのにかかった時間を 秒単位で切り捨て表示する。
例えば、リクエストの処理時間が 1秒未満の場合は ’0’ が表示される。
%u リモートユーザ(authによる認証されたユーザ。 ステータス(%s)が401の場合は意味がない可能性がある)
%U リクエストされたURLパスで、クエリ文字列は含まない
%v リクエストを扱っているサーバの正式なサーバ名
%V UseCanonicalNameの設定によるサーバ名
1.3.2.8.4. LogLevel
表1.3.2.8-4
名前 LogLevel
説明 エラーログに出力するログレベルを設定します。
書式 LogLevel level
設定例
(既定値)
LogLevel warn

なお、level には次のレベルを設定可能です。
レベル 説明 error.logへの出力例
emerg 緊急-
システムが
利用できない
Child cannot open lock file. Exiting
(子プロセスがロックファイルを開けないために終了した)
alert 直ちに対処
が必要
getpwuid: couldn’t determine user name from uid
(getpwuid: UIDからユーザ名を特定できない)
crit 致命的な
状態

socket: Failed to get a socket, exiting child
(socket: ソケットの取得に失敗したため、子プロセスが終了した)

error エラー Permature end of script headers
(スクリプトのヘッダが足りないままで終了した)
warn 警告 child process 1234 did not exit, sending anther SIGHUP
(子プロセス1234が終了しないため、SIGHUPを再送した)
notice 重要な情報 httpd: caught SIGBUS, attempting to dump core in …
(httpd: SIGBUSシグナルを受け、…へコアダンプを出力した)
info 追加情報 Server seems busy, (you may need to increase MaxClients) …
(サーバ負荷が高い、MaxClientsの値を増やす必要があるかも)
debug デバッグ Opening config file…
(設定ファイルを開いている…)

1.3.2.9. 起動待ち合わせ時間の設定

WebOTX Webサーバのアライブチェックモニタ処理は、WebOTX Webサーバの起動処理が完了してから開始しますが、システムの状態やWebサーバのモジュール起動タイミングによっては、WebOTX Webサーバが起動しているにもかかわらず、「Webサーバが起動していない」というメッセージが出力される場合があります。これを回避するために、次の設定により、WebOTX Webサーバ起動後にアライブチェックモニタ処理を開始する時間を秒単位で指定します。

ここでは、WebOTX Webサーバの起動が完了してから10秒後にアライブチェックモニタを開始する場合の設定例を記載します。

otxadmin>create-jvm-options -Dwebotx.webserver.startup_wait_count=10

1.3.2.10. ディレクトリ一覧表示機能の無効化

WebOTX Webサーバの定義情報ファイル(httpd.conf)において、 ディレクトリ一覧表示機能を「無効」(ディレクトリリスティングを禁止)に 設定しています。
そのため、ブラウザからWebOTX Webサーバの DocumentRootディレクトリ (つまりhttp://localhost/)や、DirectoryIndex指示子で設定しているファイル(index.html)が 存在しないディレクトリにアクセスすると、以下の Forbidden メッセージ(HTTPステータスコード 403)が 返却されます。
WebOTX Webサーバは正常起動していますので、本メッセージが出力されることに 問題はありません。


図1.3.2.10-1

なお、WebOTX Webサーバへのアクセスに対して正常終了(HTTPステータス200)が 返却されること確認する場合には、ブラウザから次のURLを指定し、 WebOTX Webサーバのマニュアルページが表示されることを確認してください。

  http://localhost/manual/

WebOTX Webサーバのディレクトリ一覧表示機能を有効にするには、 WebOTX Webサーバの定義情報ファイル(httpd.confファイル)において、 <Directory>指示子内で設定されている Options 指示子に Indexes オプションを追加します。
<Directory>指示子は複数存在しますので、それぞれに 設定する必要があります。

<Directory "/opt/WebOTX/domains/domain1/docroot">
  Optios Indexes FollowSymLinks MultiView
  …
</Directory>

ただし、ディレクトリ一覧表示機能を有効に設定することは、 WebOTX Webサーバのセキュリティ対策上、問題となる場合があります。 本設定を有効に変更する場合には、十分な注意が必要です。

1.3.2.11. その他の定義情報

その他の定義情報の詳細については、次のURLを参照してください。

1.3.3. Javaベース内蔵WebサーバとWebOTX Webサーバの設定対応表

1.3.3.1. Webサーバに関する設定

表1.3.3.1-1
Webサーバ種別 内蔵Webサーバ WebOTX Webサーバ
説明 アクセスログのON/OFFを設定します。
項目名 server.web-container.log-available-accesslog CustomLog
既定値 TRUE -
備考   アクセスログを出力しない場合は以下の設定を行う
CustomLog /dev/null common env=0
説明 アクセスログの書式を設定します。
項目名 server.http-service.access-log.format LogFormat
既定値 "%a - %u %t \"%m %U %q %H\" %s %b %D" LogFormat "%h %l %u %t \"%r\" %>s %b %D" common
備考    
説明 仮想サーバを選択するためのホストリクエストヘッダの中で有効な値を設定します。
項目名 server.http-service.virtual-server.virtual-server-name.hosts VirtualHost
既定値 - -
備考 カンマ区切りのリスト VirtualHost内で指定
説明 仮想サーバのドキュメントルートを設定します。
項目名 server.http-service.virtual-server.virtual-server-name.docroot DocumentRoot
既定値 - DocumentRoot "%%%INSTANCE_ROOT%%%/docroot"
備考    
説明 Webアプリケーションのディレクトリより、シンボリックリンクをたどれるようにするか設定します。
項目名 server.http-service.virtual-server.virtual-server-name.property.allowLinking Options
既定値 FALSE -
備考 UNIXでのみ有効 指定なしの場合はシンボリックリンクはたどれない。
たどれるようにするためには以下の通りに設定する。
Options FollowSymLinks
説明 仮想サーバのドキュメントルートを設定します。
項目名 server.http-service.virtual-server.virtual-server-name.property.docroot DocumentRoot
既定値 - DocumentRoot "%%%INSTANCE_ROOT%%%/docroot"
備考 「server.http-service.virtual-server.virtual-server-name.docroot」で設定した内容を上書きする。  
説明 Webアプリケーション内のパス名での、大文字・小文字の区別有無を設定します。
項目名 server.http-service.virtual-server.virtual-server-name.property.caseSensitive CheckCaseOnly
既定値 TRUE -
備考 TRUE: 大文字・小文字のチェックが無効にされます。
FALSE: 大文字・小文字を区別します。
mod_spelingを有効にした場合のみ使用可能
使用例は以下の通り
CheckCaseOnly ON|OFF
説明 HTTPリクエストを受け付けるポート番号を設定します。
項目名 server.network-config.network-listeners.network-listener.network-listener-name.port Listen
既定値 - Listen %%%HTTP_PORT%%%
備考    
説明 複数アドレスを持つサーバで、特定のアドレスに対するリクエストのみ許可したい場合に設定する項目です。
項目名 server.network-config.network-listeners.network-listener.network-listener-name.address VirtualHost
既定値 0.0.0.0 -
備考   VirtualHost内で設定します。
説明 最大接続数を設定します。
項目名 server.thread-pools.thread-pool.thread-pool-name.max-thread-pool-size 備考欄を参照してください。
既定値 100 -
備考 Webコンテナが生成できるリクエスト受け付けプロセッサの最大数を設定します。 MaxClients 250 ThreadLimit 1920/64(Windows/Unix)
ServerLimit 16
ThreadsPerChild 25
説明 待ち受け待機数を設定します。
項目名 server.thread-pools.thread-pool.thread-pool-name.min-thread-pool-size MinSpareThreads(Windowsの場合)
StartServers(Unixの場合)
既定値 25 25(Windowsの場合)
2(Unixの場合)
備考 Webコンテナ起動時に生成するリクエスト受け付けプロセッサの数を設定します。  

1.3.3.2. SSLに関する設定

表1.3.3.1-1
Webサーバ種別 内蔵Webサーバ WebOTX Webサーバ
説明 証明書データベースやPKCS#11トークンで証明されるサーバの愛称を設定します。
項目名 server.network-config.protocols.protocol.protocol-name.ssl.cert-nickname -
既定値 - -
備考 証明書データベースやPKCS#11トークンで証明されるサーバの愛称です。その証明書で、名前の書き方はtokenname:nicknameです。この属性のtokenname:の部分を含むかどうかは任意です。 対応項目はありません。
説明 SSL3クライアント認証がACLに基づくアクセス制御と無関係の全てのリクエスト上で実行可能か設定します。
項目名 server.network-config.protocols.protocol.protocol-name.ssl.client-auth-enabled -
既定値 - -
備考 SSL3クライアント認証がACLに基づくアクセス制御と無関係の全てのリクエスト上で実行されるかどうかを決定します。既定値は無効(false)です。 対応項目はありません。
説明 有効な暗号化形式を設定します。
項目名 server.network-config.protocols.protocol.protocol-name.ssl.ssl2-ciphers
server.network-config.protocols.protocol.protocol-name.ssl.ssl3-tls-ciphers
SSLCipherSuite
既定値 - (WebOTX Webサーバ2.2の場合)
  HIGH:MEDIUM:!MD5:!RC4
(WebOTX Webサーバ2.4の場合)
  ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK
備考 ・SSL2で使用される暗号化形式
  使用されるSSL2暗号のコンマ区切りの一覧です。有効化には前に+をつけ、無効化には前に-をつけて下さい。有効な値はrc4, rc4export, rc2, rc2export, idea, des, desede3です。値が指定されない場合、全ての暗号が有効化されます。

・SSL3/TLSで使用される暗号化形式
  有効なSSL3暗号スイートをコンマ区切りで指定します。
指定できる値は SunJSSE が実装する暗号スイートです。
詳しくは次のドキュメントを参照してください。
http://java.sun.com/javase/ja/6/docs/ja/
 > セキュリティ
  > Sun プロバイダドキュメント
   > SunJSSE プロバイダ
有効化には前に + をつけ、無効化には前に - をつけて下さい。
設定例:
+SSL_RSA_WITH_RC4_128_MD5,+SSL_RSA_EXPORT_WITH_RC4_40_MD5

値が指定されない場合、SunJSSE がサポートする既定の全ての暗号スイートが有効化されます。
-
説明 SSL2を有効にするか設定します。
項目名 server.network-config.protocols.protocol.protocol-name.ssl.ssl2-enabled SSLProtocol
既定値 FALSE 無効
備考 - SSL2はセキュリティ上問題がありますので。有効にする際はご注意ください。
説明 SSL3を有効にするか設定します。
項目名 server.network-config.protocols.protocol.protocol-name.ssl.ssl3-enabled SSLProtocol
既定値 TRUE 無効
備考 SSL3はセキュリティ上問題がありますので。無効にすることを検討してください。 SSL3はセキュリティ上問題がありますので。有効にする際はご注意ください。
説明 TLSを有効にするか設定します。
項目名 server.network-config.protocols.protocol.protocol-name.ssl.tls-enabled SSLProtocol
既定値 TRUE 有効
備考 - TLS1.0/TLS1.1/TLS1.2が利用可能です。
説明 TLSロールバックを有効にするか設定します。
項目名 server.network-config.protocols.protocol.protocol-name.ssl.tls-rollback-enabled -
既定値 TRUE -
備考 TLSロールバックを有効化するかどうかを決定します。TLSロールバックはMicrosoft Internet Explorer 5.0 and 5.5に対して有効化されます。 対応項目はありません。

1.3.4. 外部Webサーバ設定方法

項目の設定

外部Webサーバを利用する場合は、事前に環境設定ツールを使って連携のための設定が必要です。設定方法は、「セットアップガイド > 2. インストール > 2.3. インストール後の作業」を参照してください。

外部Webサーバの設定方法については次の2通りがあります。なお、下記は外部Webサーバと連携するためのコネクタに関する設定です。Webサーバ自体の設定については、それぞれのマニュアルを参照してください。

Webコンテナ管理コンソールによる設定

Webコンテナの運用管理コンソールの「コネクタ」項目で、外部のWebサーバと連携するためのコネクタの設定ができます。コネクタの「種類」が"AJP"と表示されているものが外部Webサーバ連携用のコネクタです。詳細は「1.4. Webコンテナ」を参照してください。

MOによる参照と設定

外部Webサーバ連携用コネクタの設定は、WebコンテナのMOを介してもアクセス可能です。対象となる MO の Dottedname は「server.http-service.http-listener.http-listener-name」です。属性 protocol の値が "AJP/1.3" となっているものが外部Webサーバ連携用コネクタです。詳細は「1.4. Webコンテナ」を参照してください。