IIS 6.0のカスタムhttpヘッダに適当な値を設定して、こんなのを書いてみる。
foreach(string key in Request.Headers.AllKeys) { Response.Write(item + ":" + Request.Headers[key].toString() + "<br/>"); } foreach(string key in Request.ServerVariables.AllKeys) { Response.Write(item + ":" + Request.ServerVariables[key].toString() + "<br/>"); }
独自ISAPIフィルタで設定されるhostヘッダに付加される情報を取得するテストのためにカスタムhttpヘッダ使えないかなと思っていたのに…。
msdn2.microsoft.comのどこかで見つけた説明には、IIS 7.0ではカスタムhttpヘッダはasp.netでとれないと書かれていて、かなりショックだったんだけど、どこに行ったかわからない。ぶくましておけばよかった。
最初、foreachの中を間違えてResponse.Headersと書いてしまい、「統合パイプライン モードが必要です」という例外が出て「あれ、それってIIS 7.0の機能じゃないの?」とあせったのは秘密だ(.NET Framework 3.0はインストール済み)。