Hatena::Groupsubtech

ういはるかぜの化学

Wednesday, November 20, 2013

IISのステータスコードは小数点つきという話 07:52 IISのステータスコードは小数点つきという話 - ういはるかぜの化学 を含むブックマーク はてなブックマーク - IISのステータスコードは小数点つきという話 - ういはるかぜの化学

IISのステータスコードには小数点があるという話が話題になっていました。IIS 7.0、IIS 7.5、および IIS 8.0 の HTTP 状態コードというKBが元で広がってるのですけど、まあこれはKBの書き方が悪くて誤解されている感じです。

IISHTTPのステータスコードに加え診断用にサブステータスコードというのを内部的に持っています。たとえば「403だけどなんで403なの?(IP拒否?ディレクトリリスティング拒否?)」とかを解決しやすくするために定義されています。当然それは内部サブステータスコードなので表に出てくることは基本的にありません。

ただし次の場所を見たときにはサブステータスコードを目にすることがあります。

  • IISが返す詳細なエラーページ
  • エラートレース
  • ログファイル

繰り返しますが HTTP 403.1 Forbidden みたいなレスポンスが返るわけではありません。

例の小数点なのは詳細なエラーページに表示したりする際の形式として[ステータスコード].[サブステータスコード]と小数点となっているということです。

f:id:mayuki:20131120074700p:image:w640

なお、この詳細なエラーページというのもローカルからのアクセスのような場合のみ表示されるだけで通常はサブステータスコードは見えません。

ログファイルにおいても別なカラムになっているので小数点にみえるってことはなかったりします。

#Software: Microsoft Internet Information Services 8.5
#Version: 1.0
#Date: 2013-11-19 22:23:44
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) cs(Referer) sc-status sc-substatus sc-win32-status time-taken
2013-11-19 22:23:44 ::1 GET /Web.config - 80 - ::1 Mozilla/5.0+(Windows+NT+6.3;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko - 404 8 0 1587

これは404.8ですね。cs-substatusという別カラムになっています。

まさかサブステータスコードをつけた小数点で返すと思ってる人が出るとは思いませんでしたという話でした。まあKBの書き方だとちょっとアレだなという気はします。

トラックバック - http://subtech.g.hatena.ne.jp/mayuki/20131120