9

IIS7.5 の構成 (system.webServer/handlers) を見ています。

ハンドラーのパス引数の\*.との違いを知っていますか? (file.txt と file.xml を一致させるため) または(abc.abc と abc.asc を一致させるため)\*を使用できますか?file.*abc.a?c

パス引数は「フォルダ」を参照できますか? のような\*\f4\*.txt

次のような http リクエストが与えられた場合

    GET \f1\f2.f3\f4\a.b.c?arg1.arg2.arg3=3&arg4.txt=1.4

パス引数が一致しようとする部分は何ですか?

4

1 に答える 1

8

およびパスは、URL のパターンに一致するという意味で、実際には「ワイルドカード」マッピングではありません**.

*ハンドラーは、サイトの HTTP ハンドラーで既に指定されているパス (または動詞/前提条件) に一致しないすべてのコンテンツの要求を処理します。HTTP ハンドラー リストは実際には順序付けられたリストです。IIS7 の MMC の既定のビューは、パスで並べ替えると誤解を招く可能性があります。実際の処理順序を確認するには、右側のアクション ペインにある [*View Ordered List] リンクをクリックする必要があります。

*これを行うと、ハンドラーが最後に来て、ハンドラーと呼ばれることがわかりますStaticFile。通常の操作では実行されないため、通常は無視できる動詞および動詞にのみ応答する動詞TRACEVerbHandlerおよび動詞など、他にもいくつかある場合があります。OPTIONSVerbHandlerTRACEOPTIONS

ハンドラーは ASP.NET 4.0 に固有であり、*.ASP.NET 4.0 をインストールすると追加されます。このハンドラーは、拡張子のない URL をサポートするために存在します。このハンドラーは最初は何もせず、KB980368 ホットフィックス(Windows 2008R2/Windows 7 Service Pack 1 にも組み込まれています) をインストールしたときにのみ機能します。

ハンドラーと拡張子のない URLについて、Thomas Marquardtによる素晴らしい記事がいくつかあります。*.

ASP.NET MVC ルーティングのしくみと静的要求のパフォーマンスへの影響
ASP.NET v4 による拡張子のない URLの処理方法

これらの記事には最初に吸収すべきことがかなりあります。理解するには、IIS7 パイプラインの基礎を再検討する必要があるかもしれません (資料を理解するのに数回読む必要がありました) が、それに固執してください。

于 2011-08-12T12:38:28.930 に答える