5

ブラウザーに「localhost/blabla.html」と入力すると、常に www.google.com にリダイレクトされるように HttpModule を作成しました (これは単なる例であり、実際には携帯電話からの要求をリダイレクトするためのものです)。

私の質問は:

1)IIS(7.0)に各リクエストを「HttpModule」にリダイレクトして、Webサイトから独立させるにはどうすればよいですか。web.config を変更できますが、それだけです。

2) .dll を GAC に追加する必要がありますか? もしそうなら、どうすればそれを行うことができますか?

3) HttpModule コードは 'log4net' を使用します。「log4net」もGACに追加する必要がありますか?

ありがとう

PSサイトは.net 2.0を使用しています。

4

1 に答える 1

14

BeginRequestイベントでリクエストオブジェクトを使用できます

public class MyHttpModule : IHttpModule
{
    public void Init(HttpApplication context)
    {
          context.BeginRequest += new EventHandler(this.context_BeginRequest);
    }

    private void context_BeginRequest(object sender, EventArgs e)
    {
          HttpApplication application = (HttpApplication)sender;
          HttpContext context = application.Context;

          //check here context.Request for using request object 
          if(context.Request.FilePath.Contains("blahblah.html"))
          {
               context.Response.Redirect("http://www.google.com");
          }
    }

}
于 2012-07-24T14:43:59.560 に答える