HTTP モジュールを使用して、IIS 6 の Web フォルダー経由でサイトへの要求を監視することはできますか? 次のように Web.config で参照した HTTP モジュールを使用して、非常に単純なアプリをセットアップしました。
<httpModules>
<add name="MyCustomModule" type="SimpleTest.MyCustomModule"/>
</httpModules>
このモジュールでは、BeginRequest イベントが発生したときに "C" ドライブのログ ファイルに書き込むようにコードをセットアップしました。
Private Sub BeginRequest(sender As Object, e As EventArgs)
Dim oHttpApplication As HttpApplication = CType(sender, HttpApplication)
Using file As System.IO.StreamWriter = IO.File.AppendText("C:\LOG.TXT")
file.WriteLine("got to Begin request for path: " & oHttpApplication.Request.FilePath)
End Using
End Sub
に移動するHttp://localhost/default.aspx
と、ログ ファイルに次のようなエントリが表示されます。
パスの要求を開始する必要があります: \default.aspx
しかし、Internet Explorer からフォルダー (サイト内のサブフォルダー) を Web フォルダーとして開いた場合、要求はログに記録されません。ドライブをそのフォルダーにマップすると、同じ効果があります。
IIS 6 を実行しているマシンで Web フォルダまたはマップされたドライブへの要求に対して HTTP モジュールを実行することは可能ですか?
その場合、追加の IIS 構成が必要ですか?