Thursday, June 21, 2007

Recently I upgraded my DotNetNuke installation from 3.x to 4.5.3. Upgrade went smooth but I had tough time making dasblog work under DNN. (running on virtual directory under DNN).

I googled for solution nearly full day but didn't get the exact solution. All the solutions were for dnn 3.x though which I was using for around an year (on .Net 1.1). <Clear/> tag does not work to clear root HTTP modules and handlers settings which gets inherited to any .net applications under root.

Hope this solution helps guys in similar trouble. this can be applied for any DNN 4.5.3 installation to have any virtual directory within the same...

1) add following entries in the beginning of <httpHandlers> section of web config file in dasblog.

   <remove verb="*" path="*.captcha.aspx"/> 
   <remove verb="*" path="LinkClick.aspx"/>
   <remove verb="*" path="RSS.aspx"/> 
   <remove verb="*" path="*.asmx"/>
   <remove verb="*" path="*_AppService.axd" />
   <remove verb="GET,HEAD" path="ScriptResource.axd"/>

2) add entries in <httpModules> section.

  <remove name="Compression"  />
   <remove name="RequestFilter"  />
   <remove name="UrlRewrite"  />
   <remove name="Exception"  />
   <remove name="UsersOnline"  />
   <remove name="DNNMembership"  />
   <remove name="Personalization"  />
   <remove name="ScriptModule"  /> 

3) add following entries in <pages> tag.. (make sure, all attributes of <pages> tag (if exists) are same as before.  Idea here is to clear the namespaces).

<pages validateRequest="true">
<namespaces>
    <clear/>
   </namespaces>
</pages>

All this and you'd have your web application working under DNN!!!

Cheers!!!