(IIS構成に関するものなので、この質問をServerFaultにも投稿する必要があるかどうかわかりませんか?)
IIS7では、次の方法で、管理対象コンテンツに対して実行するようにモジュールに指示できます(したがって、静的コンテンツの提供が高速化されます)。
<modules>
...
<add name="WhateverName"
type="WhateverType"
preCondition="managedHandler"
...
</modules>
だが。要求されたURLにファイル名(拡張子付き)も含まれている限り、これは問題なく機能します。省略した場合、IIS7は静的コンテンツが必要であると見なし、管理対象モジュールは実行されません。
http://localhost/ <-- this one will skip managed handlers
http://localhost/default.aspx <-- this one will run them
default.aspx
IIS7のデフォルトのドキュメントを手動で設定した場合、最初のドキュメントはです。違いはありません。違いはありません。私には、これはバグのように見え、歩き、聞こえます。そしてそれはバグです!なんで?私が最初のものを要求するとき、それは管理された要求ですからね。もちろん。ただし、IIS7はそれを静的リクエストとして扱います。それで?バグです。このリクエストは管理対象として扱われる必要があります。
ファイル名を含まないURLリクエストに対してマネージドハンドラーを実行するようにIIS7を説得するにはどうすればよいですか?
考えるのを手伝ってください
私が考えることであなたを少し助けさせてください:私が再注文するならばsystem.webServer/handlers
、私はこれを解決することができると確信しています。StaticFile
を指す最後のハンドラーの前に、StaticFileModule
ディレクトリ要求で統合asp.netハンドラーを実行する必要がありますDefaultDocumentModule
。DirectoryBrowsingModule
または、ディレクトリ要求にデフォルトのドキュメントを追加する独自のハンドラーを作成します。私はこれらの1つがそれを解決するはずだとかなり確信しています。しかし、どのように構成/開発する必要がありますか?