Hitachi Web Server
〜《*》
Webサーバをインストールしたサーバ機に割り当てられたIPアドレスのうち,どのIPアドレスからWebサーバに接続できるようにするかを指定します。IPアドレスにIPv6アドレスは指定できません。どのIPv4アドレスからも接続できるようにする場合には,*を指定します。Listenディレクティブを指定した場合は,BindAddressディレクティブの指定は無視されます。
httpsd.conf
Webブラウザごとに環境変数を設定する場合に指定します。設定する値のデフォルト値は1です。環境変数の前に!が付いたときは,その環境変数の設定を解除します。ブラウザ名は正規表現で指定でき,大文字,小文字を区別します。このディレクティブを複数指定する場合,同じ環境変数に異なるブラウザ名は指定できません。
httpsd.conf,<VirtualHost>,<Directory>,.htaccess
BrowserMatch "Mozilla/2" nokeepalive BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0 BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully BrowserMatch "^WebDrive" redirect-carefully BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully BrowserMatch "^gnome-vfs" redirect-carefully
指定例で示した環境変数の意味を次に示します。
環境変数 | 内容 |
---|---|
nokeepalive | KeepAlive接続を無効にします。Viaヘッダがリクエストに付加されている場合は,KeepAlive接続を無効にできません。 |
downgrade-1.0 | HTTP/1.1以上のリクエストを,HTTP/1.0のリクエストとして扱います。 |
force-response-1.0 | HTTP/1.0のリクエストに対して,常にHTTP/1.0のレスポンスを応答します。 |
redirect-carefully | ディレクトリへのアクセスでURLの最後に'/'を付加していなく,かつそれがGETメソッド以外を使用していたとき,クライアントにリダイレクトを要求しません。 |
Webブラウザごとに環境変数を設定する場合に指定します。設定する値のデフォルト値は1です。環境変数の前に!が付いたときは,その環境変数の設定を解除します。ブラウザ名は正規表現で指定でき,大文字,小文字を区別しません。このディレクティブを複数指定する場合,同じ環境変数に異なるブラウザ名は指定できません。
httpsd.conf,<VirtualHost>,<Directory>,.htaccess
コンテントネゴシエーションをするリクエストで,クライアント側のキャッシュを有効にするかどうかを指定します。ディレクティブの引数を省略した場合は,Onを指定した場合と同様の動作をします。ディレクティブを設定しない場合は,Offを指定した場合と同様の動作をします。このディレクティブの指定は,HTTP/1.1のリクエストに対しては無効です。
On:キャッシュされるようになります。
Off:Expiresヘッダが付けられてキャッシュされなくなります。
httpsd.conf
〜《ServerRootディレクティブ指定値》
コアをダンプするディレクトリを指定します。絶対パス,又はServerRootディレクティブの指定値からの相対パスが指定できます。なお,指定したディレクトリには,User,Groupディレクティブで指定したユーザ,グループからの書き込み権限を付与する必要があります。Linux版では,ディレクティブをコンフィグファイルに指定した場合だけ有効となります。
httpsd.conf
任意のフォーマットのログをファイルに出力させる場合に指定します。フォーマットはLogFormatディレクティブで指定するフォーマットと同様です。
このディレクティブを複数指定する場合,同じファイル名は複数指定できません。
ファイル名:ログの出力先ファイル名を指定します。ファイル名には,絶対パス,又はServerRootディレクティブの指定値からの相対パスが指定できます。
パイプ:標準入力からログ情報を受け取るプログラムを"|プログラム名"の形式で指定します。Webサーバはログ情報に含める改行コードをCRLFにして渡します。
(Windows版での注意事項)
パイプで指定されたプログラムは,制御プロセスとWebサーバプロセス用にログ情報を受け取るそれぞれ別のプロセスとして生成されます。これをパイププロセスと呼びます。サービスとしてWebサーバを起動する場合には次の点に注意してください。
"フォーマット":ログフォーマットを指定します。指定できるフォーマット名を表6-3,表6-4に示します。
ラベル名:LogFormatディレクティブで定義したラベル名を指定します。
env=環境変数:指定した環境変数が設定されている場合に,ログを採取します。
env=!環境変数:指定した環境変数が設定されていない場合に,ログを採取します。
表6-3 フォーマット一覧
フォーマット | 意味 |
---|---|
%A※1 | WebサーバのIPアドレス。 |
%a※1 | クライアントのIPアドレス。 |
%B | 送信バイト数(HTTPヘッダ,及びchunkedエンコーディングによって追加されたデータを除く)。 |
%b | 送信バイト数(HTTPヘッダ,及びchunkedエンコーディングによって追加されたデータを除く)。ただし,0の場合は-(ハイフン)。 |
%{cookie_name}C | Cookieヘッダ値に含まれるクッキー名cookie_nameの値。Cookieヘッダ値に複数のcookie_nameが見付かった場合,すべての値を出力する。 |
%D | リクエスト処理時間をマイクロ秒で表示。 |
%{env_name}e | env_nameに指定した環境変数の値。 |
%f | クライアントが要求したディレクトリ,又はファイル名。 |
%H | リクエストプロトコル(HTTP/1.0など)。 |
%h※2 | クライアントのホスト名。 |
%I | リクエストとヘッダを含む,全受信バイト数。 |
%{header_name}i | header_nameに指定したHTTP通信によるリクエスト中のhttpプロトコルヘッダの値。 |
%l | クライアントの識別情報(IdentityCheckディレクティブがOn,かつクライアント上でidentdが動作している場合)。 |
%m | リクエストメソッド(GET,POSTなど)。 |
%{note_name}n | note_nameに指定したWebサーバ内モジュールの注記の値。 |
%O | ヘッダを含む,全送信バイト数。 |
%{header_name}o | header_nameに指定したHTTP通信で送信中のhttpプロトコルヘッダの値。 |
%P | HTTP通信のリクエストを処理するプロセスID。 |
%{hws_thread_id}P | HTTP通信のリクエストを処理するスレッドID。Windows版で有効。 |
%p | ポート番号。 |
%q | 問い合わせ文字列。 |
%r | HTTP通信のリクエストの先頭行。 |
%s | ステータス(内部リダイレクトされた場合はオリジナルを示す)。 |
%T | リクエスト処理に掛かった時間(秒)。HWSLogTimeVerboseディレクティブでOnを指定すると,ミリ秒単位まで表示。 |
%t | リクエスト処理を開始した時刻。HWSLogTimeVerboseディレクティブでOnを指定すると,ミリ秒単位まで表示。 |
%{format}t | リクエスト処理を開始した時刻。strftime()で定義されているフォーマットをformatに指定する。 |
%U | URL。 |
%u | クライアントのユーザ名(ユーザ認証をした場合)。 |
%V※2 | UseCanonicalNameディレクティブの指定に従い,ServerNameディレクティブ指定値,サーバ名,又はIPアドレス。 |
%v | サーバ名。 |
%X | レスポンス完了時の接続ステータス。 +:レスポンス送信後も接続を維持する。 −:レスポンス送信後に接続を切断する。 X:レスポンス完了前に接続を切断する。 |
%>s | 最終ステータス。 |
表6-4 SSL関連のログフォーマット一覧
フォーマット | 意味 |
---|---|
%{version}c | SSLのバージョン |
%{cipher}c | 現在の通信で使用している暗号種別 |
%{clientcert}c | SSLクライアント証明書のsubjectのDistinguished Name |
フォーマットの%の後ろにステータスコードを記述できます。
%400,501 {User-Agent}i
%!200,304,302 {Referer}i
また,env=は,指定した環境変数の設定によって,ログの採取を分ける場合に指定します。
SetEnvIf Request-URI \.gif$ gif-image CustomLog gif.log common env=gif-image CustomLog nongif.log common env=!gif-image
httpsd.conf,<VirtualHost>
CustomLog logs/access.log common CustomLog logs/ssl.log "%t %{version}c %{cipher}c %{clientcert}c"
ディレクトリインデクスで表示するアイコンを指定します。AddIcon,AddIconByType,及びAddIconByEncodingディレクティブのどれにも該当しない場合に表示するアイコンのURLを指定します。なお,URLの「http://IPアドレス」を省略しないでIPv6アドレスを指定する場合は,IPv6アドレスを[ ]で囲んでください。
httpsd.conf,<VirtualHost>,<Directory>,.htaccess
Indexesレベル
DefaultIcon /icons/unknown.gif
ドキュメントで使用するデフォルトの言語を指定します。指定した言語コードはContent-Languageレスポンスヘッダに設定されます。AddLanguageディレクティブの設定に対するデフォルト値となります。デフォルト値が設定されていない場合,Content-Languageレスポンスヘッダは送信しません。
httpsd.conf,<VirtualHost>,<directory>,.htaccess
FileInfoレベル
〜《text/plain》
TypesConfigディレクティブで指定したファイルで定義したMIMEタイプのどれにも該当しないコンテンツに対して使用するMIMEタイプ名を指定します。
httpsd.conf,<VirtualHost>,<Directory>,.htaccess
FileInfoレベル
DefaultType text/plain
Webサーバへアクセスできるクライアントを制限する場合に指定します。ホストにはアクセスを許可するホストのドメイン名,IPアドレス,サブネット,ネットマスクを指定できます。すべてのホストからアクセスを禁止する場合は,allを指定します。
また,ホストには,IPv6アドレスに関するドメイン名,アドレス及びプレフィックス長も指定できます。IPv6アドレスを指定する場合は,IPv6アドレスを[ ]で囲まないでください。プレフィックス長は,「IPv6アドレス/プレフィックス長」の形式で指定します。プレフィックス長は10進数で指定してください。
env=環境変数を指定すると,サーバへのアクセスを環境変数の値で制御できます。BrowserMatch,BrowserMatchNoCase,SetEnvIf,SetEnvIfNoCaseディレクティブと併せて使用すれば,HTTPリクエストヘッダフィールドに基づいてアクセスを制限できます。
Allowディレクティブ(アクセス許可)とDenyディレクティブ(アクセス制限)は,Orderディレクティブで評価の順序を設定できます。
ホスト | 意味 |
---|---|
ドメイン名 | ドメイン名で示すホストからのアクセスを禁止する。 |
IPアドレス | IPアドレスで示すホストからのアクセスを禁止する。 |
サブネット | サブネット(IPアドレスの最初の1から3バイト)で指定したホストからのアクセスを禁止する。 |
ネットマスク | ネットマスク表記(例:10.1.0.0/255.255.0.0)で指定したホストからのアクセスを禁止する。 10.1.0.0/16形式で表記した場合10.1.0.0/255.255.0.0と同じ意味である。 |
<Directory>,.htaccess
Limitレベル
〜《index.html》
Webブラウザからのリクエストが特定のコンテンツを指定していない場合に,デフォルトとしてクライアントに送信するコンテンツのファイル名を指定します。ファイル名を複数指定した場合は,先に指定したファイル名を優先して送信します。
ここで指定したファイルがリクエストされたディレクトリにない場合,Optionsディレクティブの指定によってWebブラウザの表示が変わります。
httpsd.conf,<VirtualHost>,<Directory>,.htaccess
Indexesレベル
DirectoryIndex index.html
ファイル名の指定がないリクエストの場合,ディレクトリにindex.htmlがあれば表示させます。
〜《/opt/hitachi/httpsd/htdocs》 (UNIX版)
〜《ServerRootディレクティブのデフォルト値/htdocs》 (Windows版)
コンテンツを格納するドキュメントルートディレクトリを絶対パスで指定します。ディレクトリ名の終端には/(スラント)を記述しないでください。
ディレクトリ名は,絶対パスで指定してください。
httpsd.conf,<VirtualHost>
DocumentRoot "C:/Program Files/Hitachi/httpsd/htdocs"
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.