コンテンツへスキップ

IIS7以前のだと、規定ではASP.NETで取り扱わない.htmlなどの要求はスルーしちゃうんだよなー

2010年1月12日

HTTP ハンドラと HTTP モジュールの概要 を見ると、

IIS 7.0 では、要求パイプラインが Web サーバーの要求パイプラインと統合されています。このため、ASP.NET に対する要求だけでなく、Web サーバーに対するすべての要求に HTTP モジュールを使用できます。

ってことはつまり、ASP.NETに入ってこない要求はHTTPモジュールで処理できないということか・・・。そりゃ、まあ、そうか。

IIS6で拡張子.htmlをASP.NETで処理するためには、仮想ディレクトリのプロパティでアプリケーション構成のマッピングでaspnet_isapi.dllを割り当てればいいのかな?んで、そのままレンダーしてくれりゃいいから、.html用のHTTPハンドラーは特に追加する必要は無いのだろう。

ところで、ちょっとしたURL書き換え(全ての要求を1つのashxにぶっ込む。元のURLはパラメターで渡す。)をHTTPモジュールでやろっかなと考えてるんだけれども、.NET3.5のSP1?で追加されたURLルーティングでならもっと簡単にできるのかな?

一応参考までにIIS7だったら、Creating rewrite rules for the URL Rewrite Moduleてのがある。

From → .NET

2件のコメント
  1. まさる permalink

    「どっとねっとふぁんblog」でルーティング関連やってましたよ。http://dotnetfan.org/blogs/dotnetfanblog/archive/category/1003.aspx

  2. 松太郎 permalink

    まさるさん、コメントありがとうございます。そして、記事のご紹介ありがとうございます。URL書き換えだと承認をちょいとカスタマイズしなきゃならなそうだからメンドイなと思ってたところでして、ルーティングなら今まで通り普通にlocation要素でできそう!ルーティングの使い方も超簡単だし。HTTPヘッダーも素のままっぽいし。

コメントを残す