0

IISの特定のWebサイトを介して送信されるすべての要求に対して.Netコードの個別のチャンクを実行したいと思います。これは完全に分離されたコードであり、その前後には何の影響もありません。リクエストからの情報をログに記録してから終了します。

これは、.Net以外のファイル(PDF、画像など)に対して実行する必要があるため、Application_OnRequestBeginまたはその他のASP.Netファイルに入れることができるものではないことに注意してください。通常は.NetFrameworkにヒットしないリクエストに対して実行する必要があります。

HTTPモジュールは私が探しているものですか?私はかなりRTFMを実行しましたが、パイプラインを操作する方法はいくつかあるようで、どれを使用すべきかよくわかりません。

4

2 に答える 2

3

HTTPモジュールを使用できますが、それを使用するには、ワイルドカードマップを使用して実行できるすべての要求をIISにマップする必要があります。。.netランタイムを介してすべてのリクエストを強制するため、これはパフォーマンスに影響を与えます。

独自のISAPIフィルターを作成することもできますが、C++を使用する必要があると思います。

編集

ASP.Netには、必要なワイルドカードマッピングを使用する場合のデフォルトのハンドラーがあります。これが、windows / microsoft.net / framework .... /config/フォルダーのweb.configにあることを確認してください。

<httpHandlers>
....
            <add path="*" verb="GET,HEAD,POST" type="System.Web.DefaultHttpHandler" validate="True"/>
</httpHandlers>

Webの構成ファイルからハンドラーを削除した可能性もあります。最後に、PDFファイルの明示的なマッピングを追加してみてください。

于 2009-03-16T14:57:29.090 に答える
1

ISAPIフィルター(5.0の用語)または拡張機能(6.0の場合)を作成する必要があります。

于 2009-03-16T14:56:26.347 に答える