0

要求がクライアントに送り返されるときに、要求の応答 HTML を変更する IIS 拡張機能を作成しようとしています。従来、これは ISAPI フィルタの作業であることはわかっていましたが、私は .Net 開発者であり、.Net で ISAPI フィルタを実装することは悪い考えであると読んだことがあります。

IIS 7 の光沢のある新しい統合パイプライン モードにより、 IHttpModuleを実装することで ISAPI フィルターと同じ機能を提供するモジュールを .Net で記述できるようになるはずであるといくつかの場所で読みましたが、変更方法がわかりません。非 ASP.Net 要求の応答 HTML。

これを行う方法について見つけた唯一のリソースはこの記事HttpApplication.CompleteRequestですが、統合パイプラインモードが有効になっていても、非 ASP.Net リソースまたは が呼び出された場合には機能しないようです。

すべてのリクエストのレスポンス html / データを変更できる IIS モジュールを C# で作成するにはどうすればよいですか?

4

2 に答える 2

0

これが .NET で本当に実現可能かどうかはわかりませんが、このhttp://aspnetresources.com/articles/CustomErrorPages esp を確認してください。HttpModule のインストールに関する部分 - おそらくこれは、IIS がモジュールをどのように認識するかの問題です。

.NET-ISAPI-Filter が悪い考えであることはあなたと一緒ですが、これがあなたのケースにどれだけの影響を与えるかを確認するために、これをチェックします。

非常に難しいオプションは、ローカル プロキシを実装することです (つまり、HttpListener ベースのサーバーを作成するか、ライブラリを使用して実装を容易にすることができます)。これは、公開するポートをリッスンし、他のポート/localhost を使用するように IIS を再構成します。ただ...この方法では、好きなものをフィルタリングできます...ただし、パフォーマンスにも影響しますが、私見です。

于 2011-11-03T10:24:18.963 に答える
0

ASP.NET モジュールを介してすべての要求をルーティングする必要があると思います。

于 2011-11-03T10:14:42.350 に答える