#navi(../)
* サーバ情報の表示・ServerTokens [#h747410b]
CentOS5を利用しApacheのServerTokensディレクティブの動作確認をしてみました。~
以下にServerTokensを変更しApacheの再起動後、ブラウザ上で出力された内容およびHTTPヘッダの内容を以下に記します。~
利用したApacheのバージョンは以下の通りです。
 $ /usr/sbin/httpd -v
 Server version: Apache/2.2.3
 Server built:   Feb 22 2012 10:54:25

#contents
#htmlinsertpcsp(web-top.html,web-sp.html)

* 関連資料 [#g926082c]
-[[ServerTokensとServerSignatureの関係>Apache/ServerTokensとServerSignatureの関係]]
* ServerTokens値の説明 [#ra130368]
ServerTokensの値は以下の値が指定できるようです。
|値|説明|
|Prod&br;ProductOnly|プロダクト名の送る(表示)|
|Major|バージョンを送る(表示) 例) Apache/2|
|Minor|バージョンを送る(表示) 例) Apache/2.2|
|Min&br;Minimal|バージョンを送る(表示) 例) Apache/2.2.3|
|OS|Minimalを指定したバージョンの表示とOS名を送る(表示)|
|Full&br;未指定(ServerTokensを定義しない)|全て表示|

* ServerTokensの値を変更しブラウザでアクセス [#n5bf7249]
404 Not FoundになるURLをブラウザに入力し、ServerTokensの値によりどのような変化になるかを確認した。
** ServerTokens Prod [#i398a386]
httpd.confを以下の設定に変更しApacheを再起動しブラウザで接続した実行結果
 ServerTokens Prod
(ProdをProductOnlyをしても同様に動作します。)
#ref(servertokens-prod.gif)
#br
Productを示すApacheが表示されています。

** ServerTokens Major [#n610ed9e]
httpd.confを以下の設定に変更しApacheを再起動しブラウザで接続した実行結果
 ServerTokens Major
#ref(servertokens-major.gif)
#br
Apache/2と表示されています。

** ServerTokens Minor [#ed287a79]
httpd.confを以下の設定に変更しApacheを再起動しブラウザで接続した実行結果
 ServerTokens Major
#ref(servertokens-minor.gif)
#br
Apache/2.2と表示されています。

** ServerTokens Min [#j5e9c39b]
httpd.confを以下の設定に変更しApacheを再起動しブラウザで接続した実行結果
 ServerTokens Min
#ref(servertokens-min.gif)
#br
Apache/2.2.3と表示されています。

** ServerTokens OS [#j4b9c27d]
httpd.confを以下の設定に変更しApacheを再起動しブラウザで接続した実行結果
 ServerTokens OS
#ref(servertokens-os.gif)
#br
Apache/2.2.3 (CentOS)と表示されています。

** ServerTokens Full [#lcb49dd5]
httpd.confを以下の設定に変更しApacheを再起動しブラウザで接続した実行結果
 ServerTokens Full
(ServerTokensをコメントアウトなどして未定義とした場合はFullと同様の動作になりました。)
#ref(servertokens-full.gif)
#br
Apache/2.2.3 (CentOS) PHP/5.1.6と表示されています。

* HTTPヘッダを確認してみる [#a9370069]
ServerTokensをFullにしてtelnetコマンドを利用してHTTPヘッダを確認してみます。~
以下の操作で行いました。~
7行目〜12行目がHTTPヘッダになります。~
9行目のServer: Apache/2.2.3 (CentOS) PHP/5.1.6 がServerTokensの値を変えることにより変化します。(今回はFullを指定。)~

  1: # telnet localhost 80
  2: Trying 127.0.0.1...
  3: Connected to localhost.localdomain (127.0.0.1).
  4: Escape character is '^]'.
  5: GET /foo HTTP/1.0
  6: 
  7: HTTP/1.1 404 Not Found
  8: Date: Fri, 13 Apr 2012 05:57:37 GMT
  9: Server: Apache/2.2.3 (CentOS) PHP/5.1.6
 10: Content-Length: 285
 11: Connection: close
 12: Content-Type: text/html; charset=iso-8859-1
 13: 
 14: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
 15: <html><head>
 16: <title>404 Not Found</title>
 17: </head><body>
 18: <h1>Not Found</h1>
 19: <p>The requested URL /foo was not found on this server.</p>
 20: <hr>
 21: <address>Apache/2.2.3 (CentOS) PHP/5.1.6 Server at localhost Port 80</address>
 22: </body></html>
 23: Connection closed by foreign host.

* 参考記事 [#z1792b39]
- httpd.apache.orgへのリンク~
http://httpd.apache.org/docs/2.1/ja/mod/core.html#servertokens

#htmlinsertpcsp(web-btm.html,web-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS