前のトピック: WEBx4 - 拡張性のある Web サーバ アプライアンス

次のトピック: データベース アプライアンス


WEBx8 - 拡張性のある Web サーバ アプライアンス

最新バージョン: 2.0.2-1

WEBx8: 拡張性のある Web サーバ

早見表

カタログ

システム

カテゴリ

Web サーバ

ユーザ ボリューム

yes

最小 メモリ

1376 MB

OS

Linux

制約

なし

質問/コメント

フォーラムで質問する

機能の概要

WEBx8 は、1 つのロード バランサ(HLB)と 8 つの Web サーバ(WEB5)から構成される、拡張性のある Web サーバです。

WEBx8 は静的な Web コンテンツに対応し、ユーザ設定可能な読み取り専用コンテンツ ボリュームからスクリプトを実行します。 ドキュメントおよびスクリプトへのパスは設定可能です。したがって、同じボリュームを異なるコンテンツに対応する複数の Web サーバまたは他のアプライアンス(またはその両方)との間で共有できます。

WEBx8 には、コンテンツ ボリューム上のスクリプトから外部サービスにアクセスするための 3 つの汎用出力端子があります。 db 端子は MySQL データベースにアクセスするために使用されます。fs 端子は共有ファイル ストレージにアクセスするために使用されます(NFS を使用して)。また、aux 端子は、SMTP サーバに電子メール メッセージを送信するために使用されます。

log 端子は、WEBx8 がログ ファイルを格納できる共有ファイルシステムに WEBx8 を接続するために使用します。

Web サーバの設定はプロパティを使用して行います。 これらのプロパティは簡単な設定方法でほとんどの使用状況に対応できるように設計されていて、通常は、デフォルト以外の値に設定する必要はほとんどありません。 高度な設定は、コンテンツ ボリュームから提供される Apache 設定形式のインクルード ファイルを使用して行えます。 コンテンツとスクリプト ファイルへのアクセスおよびそのオプションは、コンテンツ ディレクトリ内の .htaccess ファイルを通じてさらに特殊設定できます。

WEBx8 アプライアンスによって提供される機能でニーズを満たせない場合は、テクニカル サポートに連絡して可能なオプションを検討してください。 カタログを拡張して、お客様のニーズを満たすアプライアンスをご提供できる場合があります。

リソース

リソース

最小

最大

デフォルト

CPU

0.9

144

1.2

メモリ

1.343 GB

288 GB

1.5 GB

帯域幅

9 Mbps

18 Gbps

1.6 Gbps

端子

名前

方向

プロトコル

説明

in

in

HTTP

Web クライアントから送られる HTTP リクエストを処理します。 HTTP/1.1 および 1.0 プロトコルを処理します。

ctl

in

HTTP

出力を有効/無効にしロード バランサから出力端子状態を取得するために使用される制御端末。

ui

in

HTTP

ロード バランサ ランタイム統計が含まれる Web UI をエクスポーズします。

db

out

MYSQL

MySQL サーバにアクセスします。 使用状況は、コンテンツ ボリューム上の任意のスクリプト(存在する場合)によって定義されます。 使用しない場合、この端子は未接続のままにできます。

fs

out

NFS

NFS を介して読み取り/書き込みファイル アクセスを提供する、共有ファイル ストレージのネットワーク ファイルシステムへのアクセス。 使用状況は、コンテンツ ボリューム上の任意のスクリプト(存在する場合)によって定義されます。 コンテンツ ボリューム上のソフトウェアは、マウントされたリモート ファイルシステムを、アプライアンスのファイルシステム スペースの /mnt/fs であるとみなします。 使用しない場合、この端子は未接続のままにできます。 接続されたサーバは /mnt/data という名前の読み取り/書き込み共有アクセス権を持っている必要があります。

log

out

CIFS

アクセスとエラー ログを格納するための、CIFS ベースのネットワーク ファイルシステムへのアクセス。 使用しない場合、この端子は未接続のままにできます。 接続されたサーバは、匿名のログインを許可し、share という名前の読み取り/書き込み共有アクセス権を持っている必要があります。

aux

out

任意

電子メールを送信するための SMTP サーバへのアクセス。 使用状況は、コンテンツ ボリューム上の任意のスクリプト(存在する場合)によって定義されます。 注: アプライアンスでは sendmail は設定されません。メールを送信する必要のあるあらゆるアプリケーションはターゲット ホスト名に aux を使用して、単純に直接 SMTP を使用する必要があります。 Perl の CGI スクリプトの場合、メールの送信に Mail::Mailer モジュールを使用できます。
使用しない場合、この端子は未接続のままにできます。

net

out

任意

サブネット アクセス用のゲートウェイ出力です。
使用しない場合、この端子は未接続のままにできます。

mon

out

CCE

パフォーマンスとリソースの使用状況統計を送信します。
使用しない場合、この端子は未接続のままにできます。

ユーザ ボリューム

ボリューム

説明

コンテンツ

Web コンテンツ(ドキュメント、メディアおよびスクリプト)が WEBx8 によって処理されるようにする、読み取り専用で共有可能なボリューム。

ボリュームは、オプションで設定可能なスクリプト専用ディレクトリを持つ、静的および動的の両方またはいずれか一方であるコンテンツを提供する場合があります。 任意のディレクトリからのスクリプト実行もファイル名パターンを使用して設定できます。

コンテンツに加えて、コンテンツ ボリューム上のドキュメント ディレクトリ(docs_dir プロパティによって設定した)は、すべて標準的な Apache 設定形式(http://httpd.apache.org/docs/2.0 を参照)の以下のオプション設定ファイルも保持する場合があります。

プロパティ

プロパティ名

タイプ

説明

host_name

文字列

Web サイトのホスト名。 WEBx8 では、この名前を使用して、自動的に生成されたページで表示するだけでなく、たとえば、サーバ生成リダイレクトでの絶対 URL の構築にも使用します(たとえば、コンテンツ ボリューム上にインストールされたカスタム設定ファイルでセットアップ可能)。 明示的なリダイレクトはまれにしか設定されませんが、末尾の「/」 を使用しないディレクトリのリクエストでは、「/」が追加されているクライアントへのリダイレクトが発行され、このリダイレクトでは、設定されている場合、host_name の値を使用することに注意してください。
WEBx8 がその HTTP リクエストで Host: ヘッダを送信しない古いクライアントによってアクセスされることが想定される場合、このプロパティを正しく設定することが推奨されます。
このプロパティが空の文字列に設定される場合、クライアントのリクエストで使用されるホスト名が使用されます。
デフォルト:(空)

admin_email

文字列

サーバ管理者の電子メール アドレス。 WEBx8 は、自動的に生成されたページでこの名前を使用して表示します。
Default: root@localhost

content_on_fs

文字列

コンテンツが fs 端子でファイルシステムを基準にするか、またはコンテンツ ボリューム上にあるかどうかを指定します。 有効な値は on および off です。 on に設定されている場合は、すべてのコンテンツが fs 端子でのファイルシステムを基準とします。 off に設定されている場合、コンテンツはコンテンツ ボリューム上にあります。
デフォルト: off

docs_dir

文字列

対応するドキュメントがあるコンテンツ ボリューム上のルート ディレクトリ。 たとえば、/mydocs が考えられます。 docs_dir が空の文字列に設定される場合は、コンテンツ ボリュームのルート ディレクトリが使用されます。
ディレクトリはコンテンツ ボリューム上にすでに存在している必要があります。
デフォルト:(空)

docs_loc

文字列

コンテンツが表示されるクライアント可視ネームスペース内の任意の場所(「クライアント可視ネームスペース」は、URL のパス部分です。先頭の / を含めた URL 内のホスト名の右に表示されます)。 空でない値に設定されている場合は、これがドキュメント ルート ディレクトリが表示されるクライアント可視のネームスペース ルートになります。 たとえば、docs_loc が subspace/samples に設定されている場合、/subspace/samples/file1.html の HTTP リクエストはドキュメント ルート ディレクトリにある file1.html に対応します。 /subspace/samples の外にある場所のリクエストは、scripts ディレクトリ内のスクリプトのリクエストである場合を除き、エラーを返すことに注意してください(scripts_loc を参照)。
WEBx8 が Web サイトのサブスペースに対応するときに、このプロパティは有用です。 この値には末尾のスラッシュを追加しないでください。
デフォルト:(空)

scripts_dir

文字列

CGI スクリプトがあるコンテンツ ボリューム上のルート ディレクトリ。 たとえば、/scripts が考えられます。 これは、空でない値に設定して、実行可能スクリプトのみが含まれるコンテンツ ボリューム上のディレクトリを参照するようにする必要があります(「/」に設定しない)。
ディレクトリはコンテンツ ボリューム上にすでに存在している必要があります。
デフォルト:(空)

scripts_loc

文字列

scripts_dir によって指定されたスクリプト ディレクトリを可視状態にする Web スペース内の場所。 これは、専用スクリプト ディレクトリを使用できるように、空でない文字列に設定する必要があります。 典型的な値として /cgi-bin が考えられます。 この値には末尾のスラッシュを追加しないでください。
デフォルト:(空)

logs_enabled

文字列

WEBx8 で log 端子からそのログを送信するかどうかを制御します。 有効な値は on および off です。 on に設定されている場合は、log 端子を接続する必要があります。 off に設定されている場合、アクセス ログは使用されず、エラー ログは、WEB サーバのルート ファイルシステム上のファイルに書き込まれます。毎週循環的に行われ、4 週間分のバック ログが保持されます(/var/log/httpd/error_log*)。 デフォルト: off

logs_base_dir

文字列

WEBx8 ログが格納されるディレクトリ。 このプロパティは、logs_enabled が「off」に設定されていると、効果が得られません。 デフォルト: /

error_log_level

文字列

エラー ログに書き込まれるメッセージの重大度レベル。 有効な値は、debug、info、notice、warn、error、crit、alert、emerg です。 debug はほとんどのメッセージを書き込み emerg は緊急メッセージのみを書き込みます。 デフォルト: warn

srv2_standby

整数

2 番目の WEB サーバがスタンバイ モードにあるかどうかを指定します。 ゼロ以外の場合、2 番目の Web サーバはスタンバイ モードになります。それ以外の場合はスタンバイ モードにはなりません。
デフォルト: 1

srv3_standby

整数

3 番目の WEB サーバがスタンバイ モードにあるかどうかを指定します。 ゼロ以外の場合、3 番目の Web サーバはスタンバイ モードになります。それ以外の場合はスタンバイ モードにはなりません。
デフォルト: 1

srv4_standby

整数

4 番目の WEB サーバがスタンバイ モードにあるかどうかを指定します。 ゼロ以外の場合、4 番目の Web サーバはスタンバイ モードになります。それ以外の場合はスタンバイ モードにはなりません。
デフォルト: 1

srv5_standby

整数

5 番目の WEB サーバがスタンバイ モードにあるかどうかを指定します。 ゼロ以外の場合、5 番目の WEB サーバはスタンバイ モードになります。それ以外の場合はスタンバイ モードにはなりません。
デフォルト: 1

srv6_standby

整数

6 番目の WEB サーバがスタンバイ モードにあるかどうかを指定します。 ゼロ以外の場合、6 番目の WEB サーバはスタンバイ モードになります。それ以外の場合はスタンバイ モードにはなりません。
デフォルト: 1

srv7_standby

整数

7 番目の WEB サーバがスタンバイ モードにあるかどうかを指定します。 ゼロ以外の場合、7 番目の WEB サーバはスタンバイ モードになります。それ以外の場合はスタンバイ モードにはなりません。
デフォルト: 1

srv8_standby

整数

8 番目の WEB サーバがスタンバイ モードにあるかどうかを指定します。 ゼロ以外の場合、8 番目の WEB サーバはスタンバイ モードになります。それ以外の場合はスタンバイ モードにはなりません。
デフォルト: 1

timezone

文字列

アプライアンスで使用されるタイムゾーンを指定します。 このプロパティが空の場合、タイムゾーンは変更されず、現状のものが使用されます。 サポートされているタイムゾーンのリストはここで参照できます。 デフォルト: empty

重要: 列挙されたすべての文字列プロパティは、大文字と小文字を区別しません(小文字)。 他のすべての文字列プロパティは大文字と小文字を区別します。

詳細プロパティ

通常は設定する必要のない追加のプロパティです。 標準外の状況で WEBx8 を調整するために使用できます。 ロード バランサの操作に影響するプロパティは lb が先頭に付けられます(lb_mode など)。

プロパティ名

タイプ

説明

lb_mode

文字列

操作モードおよびセッション識別用の指定されたセッション Cookie を使用する方法を指定します。 有効な値は以下のとおりです。
passive -Cookie は変更されません。 指定された Cookie 値は常に一意で、同じ値が別のサーバによって使用されないことが想定されます。
sync - サーバからの HTTP 応答内の Cookie 文字列は、応答元の端子に固有になるように(Cookie 値へ 4 文字の端子 ID を追加することによって)変更されます。 「端子 ID」 はリクエストがいずれかの outX 端子上のサーバへ転送される前に取り除かれます。 端子 ID の挿入を除くと、Cookie 値と出力端子の間のマッピングは passive と同じです。つまり、Cookie 値全体が比較されます。
insert - クライアントに送信される応答にロード バランサ自身が Cookie を挿入します。これにより、クライアントがその Cookie を備えた後続のリクエストを送信するとき、クライアントからの最初のリクエストと同じサーバに送られます。 HALB によって挿入された Cookie には有効期限がありません。つまり、クライアント ソフトウェアによって永続的に保存されることはありません。
source - リクエストのソース IP アドレスはセッションを特定のバックエンド Web サーバにバインドするために使用されます。 Cookie プロパティは無視されます。
デフォルト: passive。

lb_cookie_name

文字列

セッションの識別に使用される Cookie 名。 passive モード(passive および sync - 以下のモード プロパティを参照)では、これは out1~out4 に接続されるバックエンド サーバがクライアントセッションの識別のために使用する Cookie の名前です。 insert モードの場合、これは、単一のサーバに各クライアントを「固定」するために、HALB が HTTP 応答に挿入する Cookie の名前です。 このプロパティが空の値に設定されている場合、セッション トラッキングは行われません。また、リクエストはすべて単純なラウンド ロビン方式で配布されます。 source モードでは無視されます。
デフォルト: (空)

lb_cookie_check_length

整数

passive 操作モードのときに、セッションをバックエンド サーバとマッチさせるために Cookie 値から固有キーとして使用されるバイト数を定義します。 デフォルト値の 10 は、通常すべての一般的な PHP および Java アプリケーションに十分です。 この値は、Cookie 値の長さ以下である必要があります。
デフォルト: 10

lb_max_connections

integer

ロード バランサが処理する、同時にアクティブな接続の最大数。 この数に到達すると、新しい接続は引き続き受け入れられますが、別の接続が閉じられるまでその処理は遅延されます。 起動時に、ロード バランサは、使用可能なメモリに基づいて接続の最大数を自動的に判断し、それをこのプロパティの値と比較し、最低値を使用します。 このプロパティが 0 と等しい場合、計算された値が使用されます。 使用可能なメモリおよびこのプロパティの明示的な設定のいずれも、バランサのスループットや最大リクエスト率に直接影響しないことに注意してください。低い数値(または少ないメモリ)を設定すると、バックエンド サーバが各リクエストに長時間の操作(たとえばデータベース検索)を実行している場合のみ、応答に影響が出ます。この場合、多くの応答が同時に開いたままになります。
デフォルト: 0

lb_backup_outputs

文字列

バックアップとみなされる出力(out1~out4)のスペース区切りまたはカンマ区切りのリスト。 トラフィックは、バックエンド サーバがすべて使用できない場合のみ、バックアップ サーバに転送されます。 これらのバックアップ サーバの目的は、使用できないバックエンドからエラーを投げたり、タイムアウトにしたりすることではなく、問題のクライアントへの通知またはクライアントのリダイレクトを行うことです。
デフォルト: (空)

lb_healthcheck_url

文字列

http_get および http_head のヘルス チェック メソッドを通じてバックエンド Web サーバのヘルス チェックを実行するのに使用される URL。 完全な URL(http://host.name/file/to/check/for.php)、または相対パス(/file/to/check/for.php)として指定可能です。 URL として指定された場合、HALB は HTTP/1.1 プロトコルを使用する一方で、「Host:」ヘッダ)内の UR から抽出されたホスト名を使用して、ヘルス チェックを実行します。 これにより、仮想ホストの使用が可能になります。 相対パスとして指定されると、HALB は HTTP/1.0 プロトコルを使用し、このプロパティによって指定されたドキュメントをチェックします。 このプロパティが空の場合、ロード バランサは HTTP/1.0 プロトコルを使用して、デフォルト ルート「/」をチェックします。
デフォルト: (空)

lb_healthcheck_agent

文字列

http_get と http_head のヘルス チェック メソッド用のエージェント識別子として使用される文字列。 空の場合、「HALB-health-check」が使用されます。
デフォルト: (空)

lb_healthcheck_method

文字列

バックエンド Web サーバのヘルス チェックに使用されるメソッド。
tcp_connect - ロード バランサは Web サーバのポート 80 に接続します。 接続が正常に確立されると、ロード バランサは Web サーバが機能していると判断します。 これは最も速いメソッドで、最も少ないリソースを必要とします。
http_head - ロード バランサは、lb_healthcheck_url プロパティによって指定されたドキュメントをリクエストするのに HEAD メソッドを使用します。 これは tcp_connect より遅く、ロード バランサと Web サーバの両方でより多くのリソースを必要としますが、信頼性は高くなります。 Web サーバから受信される 2xx または 3xx のステータス コードは、サーバの稼動を検証します。
http_get - ロード バランサは、lb_healthcheck_url プロパティによって指定されたドキュメントをリクエストするのに GET メソッドを使用します。 これは、リソースを最も多く必要とする一番遅いメソッドですが、信頼性は最も高くなります。Web サーバから受信される 2xx または 3xx のステータス コードはサーバの稼動を検証します。 lb_healthcheck_regexp プロパティが定義されると、ロード バランサはすべての HTTP ヘッダとサーバ ステータス コードを含むドキュメントをダウンロードし、lb_healthcheck_regexp 値との一致をチェックします。 一致が見つかると、バックエンド サーバは機能していると見なされます。見つからなかった場合、バックエンド サーバは無効になります。
デフォルト: tcp_connect。

lb_healthcheck_regexp

文字列

http_get ヘルス チェック モードで使用するテスト文字列。 短いか一般的な値(たとえば 「OK」)は間違った正の一致の原因になる場合があります。 この文字列は Perl 正規表現です。Perl 正規表現に関する詳細はここを参照してください。
デフォルト: (空)

lb_healthcheck_interval

整数

バックエンド Web サーバのヘルス チェックの間隔(秒単位で指定)。
デフォルト: 20 秒。

lb_timeout

integer

アクティブでないセッションを期限切れにする、秒単位のタイムアウト。 ゼロに設定すると、アクティブでないセッションは期限切れになりません。 ゼロ以外の値に設定すると、タイムアウト秒後に再開されたアクティブでないセッションは古いものとみなされます。「忘れられた」Cookie を持つリクエストは、Cookie を持たないものとして処理され、通常のラウンド ロビン メソッドで任意のサーバに転送されます。 このプロパティは passive モードでのみ有効で、他のすべてのモードでは無視されます。
デフォルト: 0

lb_client_timeout

整数

接続確立後にクライアントからのリクエストを待つ際の秒単位のタイムアウト。
デフォルト: 150

lb_server_timeout

整数

接続確立後にバックエンド Web サーバからの応答を待つ際の秒単位のタイムアウト。
デフォルト: 150

lb_conn_timeout

整数

TCP 接続確立のタイムアウト(秒)。 これにはヘルス チェックが含まれます。 負荷が高い場合に、値が小さすぎるとヘルスチェックがタイムアウトし、ロード バランサが出力を無効にするため、この設定には特に注意する必要があります。 20 秒未満に設定することは推奨されません。
デフォルト: 20

lb_username

文字列

ui 端子を通じてロード バランサ GUI にアクセスするためのユーザ名。 空の場合、認証はありません。
デフォルト: (空)

lb_password

文字列

ui 端子を通じてロード バランサ GUI にアクセスするためのパスワード。 ユーザ名が空の場合、パスワードは無視されます。
デフォルト: (空)

lb_ctl_port

整数

ctl 端子を通じて Web サービス コントロール インターフェースにアクセスするために使用されるポート。
デフォルト: 80

lb_ui_port

整数

ui 端子を通してロード バランサ ランタイム統計 GUI にアクセスするために使用されるポート。
デフォルト: 80

cgi_ext

文字列

CGI スクリプト用のファイル名サフィックスをスペース区切りのリストとして定義します。 これは実行可能 CGI スクリプト(任意のディレクトリ内)として扱うファイルの指定に使用され、共通のスクリプト ディレクトリの指定の代わりとして使用できます。scripts_dir および scripts_loc プロパティを参照してください。 デフォルト: .cgi

shared_perl_ext

文字列

インプロセス Perl スクリプト用のファイル名サフィックスをスペース区切りのリストとして定義します。 これは mod_perl で実行する Perl スクリプトとして扱うファイルを指定するために使用されます。 cgi_ext 内にすでに指定されたものと一致する拡張子は、その拡張子に対する CGI の使用を無効にし、代わりに mod_perl によって実行されるように設定します。 インプロセス Perl モジュールは、指定された拡張子を使用して CGI 互換モードでスクリプトを実行するように設定されています。CGI プロセスとして実行するよう設計されたほとんどの Perl スクリプトは、インプロセス スクリプトとしても設定すると機能します。 注: たとえば、すべてのファイル スコープ変数が適切に初期化されるように、use strict、use warnings などでスクリプトをチェックすることが重要です。mod_perl で実行されるスクリプトはすべて Perl インタープリタを再起動せずに、実行されるからです。 スクリプトが mod_perl で動作するかどうか分からない場合、mod_perl ドキュメント(http://perl.apache.org/docs/index.html)で詳細を確認してください 。
デフォルト:(empty)(mod_perl を使用しない)

index_files

文字列

クライアントがディレクトリ名を参照する URL をリクエストする場合にディレクトリの索引ページとして使用する、順序付けられたスペース区切りのファイル リスト。
デフォルト: index.html index.html.var

use_htaccess

文字列

ドキュメント ツリー全体の .htaccess ファイルの使用を有効にするべきかどうかを指定します。 これはデフォルトでは無効になっています。サーバ オプションの高精度な制御が必要であるが共通の環境設定ファイル内のセクションのセットを使用して設定するには複雑すぎるコンテンツ ディレクトリ構造を持つ場合、またはすでに .htaccess を使用する事前設定済みのコンテンツ ボリュームがあり、再配置を避けたい場合にのみ使用してください。 設定オプションがドキュメント ルート自体にのみ必要である場合、代わりにドキュメント ルート ディレクトリの .htconf ファイル内に設定を置いてください。.htaccess と全く同様に適用されますが、ファイルがブート時に一度読み込まれる点が異なります。 デフォルト: off

max_connections

整数

各 Web サーバが処理できる同時アクティブ接続の最大数。 この制限に到達すると、追加の接続リクエストは(511 の制限まで)キューに置かれ、現在アクティブな接続が閉じられると処理されます。 この値は、WEBx8 が、外部ソースの遅いデータ(たとえば、長いデータベース クエリ)にアクセスする必要のある大量のリクエストを処理することになっている場合にのみ使用します。 システムメモリが十分でない場合、同時接続の実際の数は、このプロパティに設定された値より低く制限される場合があります。 下の「メモリ使用量」のセクションを参照してください。 max_connections 値は 256 より大きい値には設定できません。
デフォルト: 128

persistent_connections

文字列

クライアントが同じ接続上で複数のドキュメントをリクエストすることを WEBx8 が許可するかどうかをコントロールします。 有効な値は on と off です。 HTTP/1.1 を正しくサポートしないが、HTTP/1.0 には戻らないクライアントで問題がある場合のみ、永続的な接続を無効にすることが必要になる場合があります。 デフォルト: on

idle_timeout_sec

整数

リクエストや応答がない場合にクライアント接続を開いたままにしておく、秒単位のタイムアウト。 このプロパティは、persistent_connections が on の場合のみ使用されます。 このタイムアウトを短くすると、使用されていない接続をすみやかに切断することに役立ちます。 デフォルト: 15

data_timeout_sec

整数

データ送信が開始されたが完了していないときに、さらにデータを受信または送信する場合の秒単位のタイムアウト。 このタイムアウトがあると、WEBx8 が転送中に遅延を許可する一方で使用されていない接続を切断することを可能にします。 デフォルト: 300

default_charset

文字列

text/html または text/plain タイプの返されたドキュメントをレポートするために設定されたデフォルトの文字セット。 このプロパティは文字セットの名前か、off(HTTP 応答で charset ヘッダの送信を無効にする)に設定する必要があります。 ブラウザの設定によっては、このプロパティは処理される HTML ドキュメントの作者が作成した文字セット値を無効にする場合があります。したがって、有効な文字セットの仕様が含まれないドキュメントがあり、WEBx8 によって処理されるドキュメントのすべてが同じ文字セットを持つことが事前に分かっている場合にのみ推奨されます。 典型的な値の例は、iso-8859-1 または utf-8 です。 デフォルト: Off
注: 正しいコンテンツ タイプのメタ タグを生成しない古い CGI スクリプトなどの特別なケースに対応するため、コンテンツ ボリュームに保管されるカスタム環境設定ファイルを使用して、デフォルトの文字セットをディレクトリ別に設定することが可能です。

info_level

文字列

WEBx8 が自身に関する情報を Web クライアントにどれだけ開示するかをコントロールします(HTTP 応答および自動的に生成されたページ)。 有効な値は、full(最大限の情報)、os、minor、major、prod(最小限の情報)です。 セキュリティ対策として、最小限の情報を公開することが推奨されます。 デフォルト: prod

server_signature

文字列

生成されたすべてのページ(たとえばエラーページ)の最下部に WEBx8 がサーバの署名行を追加するかどうかをコントロールします。 有効な値は on と off です。 WEBx8 が署名に含める情報の量は info_level によってコントロールされます。 デフォルト: off(署名なし)。

env

文字列

名前 = 値のペアとして設定を WEBx8 へ渡すために使用されます。 デフォルト:(空)

重要: 列挙されたすべての文字列プロパティは、大文字と小文字を区別しません(小文字)。 他のすべての文字列プロパティは大文字と小文字を区別します。

メモリ使用量

WEBx8 の各 WEB サーバは、広範囲に利用可能なメモリで実行して、異なるサイズおよび負荷のアプリケーションに適合できるようにそれ自体を自動的に設定します。 ただし、コンテンツ ボリュームにインストールされる場合がある動的なコンテンツ スクリプトのメモリ使用状況を設定計算では予測できないため、スクリプトの不正な動作の影響で、過剰コミット メモリによるサーバの誤動作が発生し、OS によってプロセスが強制終了される場合があることに注意してください。

デフォルトでは、それぞれの WEB は、次の想定に従ってアクティブな接続の最大数を設定します。

たとえば、32M による「サンドボックス」設定では、アクティブな接続の最大数は 8 に設定されます。

接続の最大数は max_connections プロパティを使用して、自動的に計算される値未満に制限できます。 max_connections が使用可能なシステム メモリによって課された制限を超える場合は、警告なしでトリムされます。

また、PHP プリプロセッサの割り当て制限は、上記のルールに従った計算により、スクリプトに使用できるメモリの 1/2 に設定されます。つまり、PHP は、実行されるスクリプト用のメモリを次のように制限するように設定されます。

(system_memory - 16MB - max_connections* 1MB)/2 

ここで max_connections 値は、より小さい max_connections プロパティと、使用可能なメモリによって課される制限を表します(上記のとおり、1 接続当たり 2MB を想定して計算)。 max_connections プロパティがそのデフォルト値のままになる場合、PHP メモリ制限として以下の値が使用されます。

(system_memory - 16MB)/4 

注: 使用される「1 スクリプト当たりの使用可能メモリの 1/2」というルールはやや楽観的です。つまり、すべてのアクティブな接続によって実際に制限に達するメモリ要求の大きい PHP スクリプトが使用されるとは限らない、またはスクリプトでは、割り当てるすべてのメモリを実際に使用するとは限らないという想定に基づいています。

ヒント: メモリ要求の大きいアプリケーションが負荷状態で誤動作を開始し(接続の切断)、使用可能なメモリを増やすことがオプションとして無効な場合は、max_connections プロパティを低い値に設定してみてください。 これにより、同時に実行される可能性があるスクリプト インスタンスの数が減少し、それぞれのインスタンスに実行用のメモリが解放されます。

コンテンツ、共有ファイル ストレージのセットアップ

このセクションでは、動的なコンテンツに対応するスクリプトの設定に役立つ情報を提供します。

固定されたディレクトリ名

HTTP サーバの起動時に、以下のディレクトリおよびファイルを、それぞれの WEB インスタンスのファイルシステム スペース内で使用できます。 なお、任意のスクリプトまたは設定ファイルでは、これらの場所以外で絶対ディレクトリ名を使用することをお勧めしません。

/var/www/html - クライアントでは「/」 として可視状態になる Web ルート。 これは、コンテンツ ボリューム上の場所を参照し、読み取り専用です。 注: docs_loc プロパティが設定される場合、/var/www/html 自体にデータ ファイルは含まれません。 docs_loc の値を追加すると、ドキュメント ルートを参照する有効なシンボリック リンクの名前が生成されます。 このディレクトリ名と /var/www/cgi-bin 名およびそれらのいずれかのサブディレクトリを Apache 設定ファイル内で使用して、追加のディレクトリ別設定をセットアップできます。 この場合は、docs_dir と scripts_dir プロパティ用の特定の設定をそのような設定ファイルで認識する必要はなくなります。

/var/www/cgi-bin - scripts_dir プロパティを使用してセットアップする場合の、スクリプト ルートのシンボリック リンク。

/mnt/fs - fs 端子に接続された NFS サーバによって提供される共有読み取り/書き込みファイル ストレージのルート。 接続されていない場合、/mnt/fs は空になります。

固定された Web スペースの場所

/icons/ パスは、サーバによって生成されたディレクトリ リストのストック アイコンが含まれるディレクトリのエイリアスです。 したがって、コンテンツ ボリューム内のアイコンという名前のディレクトリは表示できません。

アクセス制御

HTTP サーバはユーザ 48、グループ 48 として作動します。 CGI スクリプトは同じコンテキストで実行されます。

コンテンツ ボリューム上のファイルには、HTTP を通じて対応する資格があるすべてのユーザ用の「読み取り」許可が必要です。 実行可能スクリプトには、すべてのユーザ用の「読み取り」および「実行」許可が必要です。

Apache サーバには、ファイルへのアクセスを制御する他の手段がありますが、1 つの方法では、HTTP を通じてアクセス可能にすべきでないファイルまたはディレクトリからすべてのユーザ用の読み取り許可を削除することもできます。 リストへのアクセスを可能にすべきでないがアクセス可能なファイルまたはサブディレクトリが含まれているディレクトリでは、x ビット セットをオンのままにします。

電子メールの送信

sendmail システムは WEBx8 上で設定されません。 そのシステムは、このアプライアンスから電子メールを送信するために使用しないでください。 Perl ベースのスクリプトを使用する場合は、SMTP メーラを使用するように設定されているという前提で、Mail::Mailer モジュールを電子メールの送信に使用できます。 どのような場合も、ユーザの SMTP メーラは SMTP サーバのホスト名として aux を使用するようにセットアップする必要があります。たとえば、Mail::Mailer を使用する場合は、次のように指定します。

$mailer = new Mail::Mailer 'smtp', (Server => 'aux'); 
$mailer->open(\%headers); #... etc. 
内部

WEBx8 の内部を以下に示します。

WEBx8 アプライアンスの内部

典型的な使用状況

拡張性のある 2 層アプリケーション

拡張性のある 2 層アプリケーション

注とリンク

既知の制限