httpModules not working on iis7

Posted by roncansan on Stack Overflow See other posts from Stack Overflow or by roncansan
Published on 2010-05-29T14:14:34Z Indexed on 2010/05/29 14:22 UTC
Read the original article Hit count: 813

Hi,

I have the following module

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

     public void Dispose()  
     {  
     }

     public void OnBeginRequest(Object s, EventArgs e)
     {

         HttpApplication app = (HttpApplication)s;

         if (app.Context.Request.Url.ToString().ToLower().EndsWith(".aspx"))
         {
             if (app.Context.Request.Url.ToString() != app.Context.Request.Url.ToString().ToLower())
             {
                 HttpResponse response = app.Context.Response;

                 response.StatusCode = (int)HttpStatusCode.MovedPermanently;
                 response.Status = "301 Moved Permanently";
                 response.RedirectLocation = app.Context.Request.Url.ToString().ToLower();
                 response.SuppressContent = true;
                 response.End();
             }
             if (!app.Context.Request.Url.ToString().StartsWith(@"http://zeeprico.com"))
             {
                 HttpResponse response = app.Context.Response;

                 response.StatusCode = (int)HttpStatusCode.MovedPermanently;
                 response.Status = "301 Moved Permanently";
                 response.RedirectLocation = app.Context.Request.Url.ToString().ToLower().Replace(@"http://zeeprico.com", @"http://www.zeeprico.com");
                 response.SuppressContent = true;
                 response.End();
             }
         }
     }
}

the web.config looks like

<system.web>
  <httpModules>
      <remove name="WindowsAuthentication" />
      <remove name="PassportAuthentication" />
      <remove name="AnonymousIdentification" />
      <remove name="UrlAuthorization" />
      <remove name="FileAuthorization" />
      <add name="LowerCaseRequest" type="LowerCaseRequest" />
      <add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter" />
      <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</httpModules>
</system.web>

It works grate on my PC running XP and IIS 5.1

but on my webserver running IIS7 and WS 2008 dosn't works, please help I don't know how to work this out.

Thanks

© Stack Overflow or respective owner

Related posts about c#

Related posts about ASP.NET