[1] Server:
ヘッダーは、
要求を処理して応答を生成した起源鯖のソフトウェアの名前や版を表します。
[24] 要求メッセージで利用者エージェントを表す
User-Agent:
ヘッダーに相当するもので、構文も同じです。
[10] Server:
ヘッダーは、
起源鯖が要求を処理するために使ったソフトウェアの情報を含みます >>9。
[11] このヘッダーは、クライアントが相互運用性の問題の範囲を特定するのを補助したり、 特定の鯖の制限に対処するために使ったりすることがあります >>9。
[18] モジュール化された鯖では、起源鯖本体だけでなく、 モジュールの情報も値に含まれることがあります。
[17] 起源鯖は、必要以上の詳細を含む Server:
ヘッダーを生成するべきではなく、
第三者の部分製品が値を追加することを制限するべきです。
長すぎると応答の遅延を増大させてしまいますし、
攻撃者が既知のセキュリティーホールを探すのを容易にしてしまいます。 >>9
[14] 1つ以上の product
または comment
を、 RWS 区切りで並べたものとされています。ただし、最初の1つは
product
でなければなりません。 >>9
[15] ここで product
は、起源鯖のソフトウェアと主要な部分製品を識別上の重要なものから順番に並べたもの
>>9 とされています。
User-Agent:
ヘッダーと同じです。
User-Agent:
と同じく、必ずしもこの構文は守られていません。
ただ利用者エージェントの多様性に比べ起源鯖の種類は多くないので、
この構文に適合する Server:
ヘッダーはかなり多い印象です。[27] セキュリティーのために、詳細な情報を記述することは好ましくないと考える人もいます。 実際にどの程度詳細な情報が指定されるかは、鯖の実装や設定によって様々です。 鯖ソフトウェアによっては、著者の設定によって詳細度を数段階制御できたり、 追加モジュール等の API によって追加モジュール等の製作者が自由に情報を追加できたりすることもあります。
[12] 起源鯖は Server:
ヘッダーを生成して構いません
>>9。
[30] プロキシサーバーが転送時に応答に Server:
ヘッダーが存在していない場合に生成して良いかどうか、
明記されていません。一般的には明記されていないことは認められないと解釈するべきと思われます。
[2] RFC 3507 - Internet Content Adaptation Protocol (ICAP) ( ( 版)) <http://tools.ietf.org/html/rfc3507#section-4.3.3>
[7]
CGI ではほぼ相当するメタ変数 SERVER_SOFTWARE
があります。
[21] 要求メッセージには利用者エージェントを表す User-Agent:
ヘッダーがあります。
[22] 串は Via:
ヘッダーにソフトウェア名を記述できます。
[23] 鯖の裏側で実際に処理を行うアプリケーションサーバーの類の情報は、
Server:
には記述せず、 X-Powered-By:
や X-Framework:
のようなヘッダーに記述するのが一般的です。
鯖のモジュールとして動作する PHP や mod_perl などは
Server:
に現れる場合と X-Powered-By:
などに現れる場合、両方に現れる場合があります。いずれにせよアプリケーションサーバー上で実際に動く
(言語やフレームワークの類ではない) 実際のアプリケーションの名前が記載されることはあまりないようです。
[8] Kazuho@Cybozu Labs: サーバシグニチャは隠さないのが当たり前 ( 版) <http://labs.cybozu.co.jp/blog/kazuho/archives/2007/09/re_server_sig.php>
[33] <https://www.facebook.com/> は Server:
を送信しないようです。