ディレクティブ設定時の注意事項について以下に説明します。
注意
本マニュアルと「Apache HTTP サーバ バージョン 2.2 ドキュメント」において、ディレクティブ名の大文字/小文字が異なる場合がありますが、ディレクティブ名に大文字/小文字の区別はないため、問題ありません。
注1) AuthGroupFileディレクティブの注意事項
AuthGroupFileディレクティブに指定するグループファイルには、1行にグループ名およびユーザ名を8191バイト以内の文字列で記述してください。1行に8192バイト以上の文字列を記述すると、8192バイト目以降の文字列が無効となります。
注2) CacheRootディレクティブの注意事項
ProxyRequestsディレクティブに「On」を設定し、CacheRootディレクティブを設定しなかった場合は、プロキシ機能は使用できますが、キャッシュ機能は使用できません。
CacheRootディレクティブに設定したディレクトリには、以下の権限を設定してください。
ユーザ:Userディレクティブに設定したユーザ
グループ:Groupディレクティブに設定したグループ
注3) DocumentRootディレクティブの注意事項
本製品のインストール直後は、DocumentRootディレクティブに設定したディレクトリ配下に、サンプルのコンテンツが格納されています。Webサーバの運用に応じて、不要なサンプルのコンテンツを削除するか、またはDocumentRootディレクティブに指定するディレクトリを変更してください。
DocumentRootディレクティブに指定するディレクトリには、NFSサーバへのマウントポイントを指定できますが、Webサーバ運用中は常にNFSサーバへのアクセスが可能である必要があります。Webサーバを起動する前にNFSサーバが正常に起動されていることを確認してください。また、Webサーバ運用中は、NFSサーバへのアクセスが不可となるような操作(NFSサーバの電源断など)を行わないでください。
注4) ErrorDocumentディレクティブの注意事項
ErrorDocumentディレクティブに指定可能なエラードキュメント、およびそのエラードキュメントに対してクライアントに通知可能なステータスコードを以下に示します。ステータスコードの意味については、「メッセージ集」の「Webサーバから通知されるステータスコード」を参照してください。
エラードキュメント | ステータスコード |
---|---|
テキストメッセージ | 300、301、302、303、400、401、403、404、405、406、407、409、410、411、413、414、415、416、417、423、424、500、501、502、503、504、506、507 |
内部URL | 204、300、301、302、303、401、403、404、405、406、409、410、411、413(*)、415、416、423、424、500、501(*)、502、503、504、506、507 |
外部URL | 204、300、301、302、303、403、404、405、406、409、410、411、413、415、416、423、424、500、501、502、503、504、506、507 |
*)静的コンテンツへの内部リダイレクトは指定できますが、CGIを利用した内部リダイレクトは指定できません。
注5) ErrorLogディレクティブの注意事項
Interstage HTTP Server 2.2では、「syslog」を使用できません。
メインホスト・バーチャルホストそれぞれにErrorLogディレクティブを複数設定した場合は、それぞれ最後に定義した設定が有効となります。
注6) FileETagディレクティブの注意事項
FileETagディレクティブの「デフォルト」と「All」の説明に誤りがあります。正しい説明を以下に示します。
誤 | 正 |
---|---|
デフォルト:FileETag INode MTime Size | デフォルト:FileETag INode Size MTime |
All:使用可能なすべてのフィールドを使います。 これは | All:使用可能なすべてのフィールドを使います。 これは |
注7) LimitInternalRecursionディレクティブの注意事項
内部リダイレクト数またはサブリクエスト数がLimitInternalRecursionディレクティブの設定値を超過した場合は、クライアントにステータスコード「500」(Internal Server Error)で応答を返します。
注8) Listenディレクティブの注意事項
Listenディレクティブに設定するIPアドレスには、IPv4射影アドレスを指定できません。
Windows Server(R) 2003の場合、ListenディレクティブのIPアドレスにはIPv6アドレスのリンクローカルアドレスを指定できません。リンクローカルアドレスを指定すると、イベントログ(アプリケーション)にエラーメッセージahs00018を出力し、Webサーバの起動に失敗します。
ListenディレクティブのIPアドレスにはIPv6アドレスのリンクローカルアドレスを指定できません。リンクローカルアドレスを指定すると、システムログにエラーメッセージahs00018を出力し、Webサーバの起動に失敗します。
ポート番号には、システム上のアプリケーションを含むすべてのサービスにおいてそれぞれ異なるポート番号を設定する必要があります。
Interstage HTTP Server 2.2が使用しているポート番号については「A.2 ポート番号」を、本製品が使用しているポート番号については「システム設計ガイド」の「ポート番号」を参照してください。
注9) ListenBackLogディレクティブの注意事項
ListenBackLogディレクティブに設定するキューの最大数の指定範囲およびデフォルト値は、オペレーティングシステムにより異なります。それぞれの値を以下に示します。
キューの最大数の指定範囲 | デフォルト値 | |
---|---|---|
1~200 | ListenBacklog 200 | |
1~2147483647 | ListenBacklog 511 |
MaxClientsディレクティブに設定したクライアント同時接続数よりも多くの接続要求があった場合、キューイングされる数の最大値は、以下の条件に応じた値となります。
多重接続時の動作については、「1.2 Webサーバのプロセス構成(Windows(R))」の「最大多重動作」または「1.3 Webサーバのプロセス構成(Solaris/Linux)」の「最大多重動作」を参照してください。
条件 | 接続待ちキューの最大数 | |
---|---|---|
なし | ListenBackLogディレクティブの設定値 + 1 | |
ListenBackLogディレクティブの設定値 ≦ 待機中TCPコネクションの最大値 (注) | ListenBackLogディレクティブの設定値 | |
ListenBackLogディレクティブの設定値 > 待機中TCPコネクションの最大値 (注) | 待機中TCPコネクションの最大値 (注) |
注)待機中TCPコネクションの最大値は、各オペレーティングシステムにおいて以下のコマンドを実行して確認します。待機中TCPコネクションの設定およびコマンドの詳細については、オペレーティングシステムのドキュメントを参照してください。
| 待機中TCPコネクションの最大値 | コマンド実行例 |
---|---|---|
tcp_conn_req_max_q | /usr/sbin/ndd /dev/tcp tcp_conn_req_max_q | |
/proc/sys/net/core/somaxconn | /sbin/sysctl -n net.core.somaxconn |
クライアントからの接続要求が以下の値を超過した場合は、この接続要求を受け付けず、ステータスコードも返却しません。
クライアント同時接続数+接続待ちキューの最大数 +1
クライアント同時接続数+接続待ちキューの最大数 +α
α:オペレーティグシステムの仕様に応じた値
注10) MaxKeepAliveRequestsディレクティブの注意事項
サーバの機能を最大に設定する場合は、リクエスト数に「0」を指定することを推奨します。「1」以上の値を指定すると、「指定したリクエスト数+1」のリクエストを処理したあと、コネクションを切断します。
注11) MaxRangesディレクティブの注意事項
MaxRangesディレクティブに設定するHTTP範囲指定の数がMaxRangesディレクティブの設定値を超過した場合、HTTP範囲指定は無効となります。
注12) MaxRequestsPerChildディレクティブの注意事項
MaxRequestsPerChildディレクティブに設定するHTTPリクエスト数には、常に「0」を指定することを推奨します。「0」以外の値を指定すると、デーモンプロセスの再起動時に環境定義ファイル(httpd.conf)を再度読み込むため、Webサーバの運用中に環境定義を変更した場合、予期せぬタイミングでWebサーバの動作に反映されることがあります。
注13) SendBufferSizeディレクティブの注意事項
オペレーティングシステムに設定されているTCP/IPの送信バッファサイズは、以下のコマンドを実行して確認してください。TCP/IPの送信バッファサイズの設定およびコマンドの詳細については、オペレーティングシステムのドキュメントを参照してください。
| TCP/IPの送信バッファサイズ | コマンド実行例 |
---|---|---|
tcp_xmit_hiwat | /usr/sbin/ndd /dev/tcp tcp_xmit_hiwat | |
tcp_wmem | /sbin/sysctl -n net.ipv4.tcp_wmem [表示結果] 注)TCP/IPの送信バッファサイズは、中央の値です。上記の表示結果の場合、「16384」となります。 |
注14) ServerLimitディレクティブの注意事項
ServerLimitディレクティブは、MaxClientsディレクティブの前に設定してください。
注15) ServerNameディレクティブの注意事項
ServerNameディレクティブに設定するIPアドレスには、IPv6アドレスを指定できません。
注16) ThreadsPerChildディレクティブの注意事項
ThreadsPerChildディレクティブの設定値を超過するクライアントの接続要求があった場合は、Webサーバ内およびオペレーティングシステム内の接続待ちキューに保存されます。オペレーティングシステム内の接続待ちキュー数は、ListenBacklogディレクティブで最大数を設定します。
多重接続時の動作については、「1.2 Webサーバのプロセス構成(Windows(R))」の「最大多重動作」を参照してください。
Webサーバコネクタと連携する場合は、必ず「1」を設定してください。「1」以外の値を設定した場合は、Webサーバの動作を保証できません。