I recently upgraded a server to Windows Server 2008 and IIS7. The root web application is configured to run DotNet2. Under IIS6, I had a DotNet4 application as a child web and it ran just fine. Once I upgraded the server to IIS7, I started having issues. The DotNet4 web refused to even load, getting an 500.19 error:
“There is a duplicate ‘system.web.extensions/scripting/scriptResourceHandler’ section defined”.
Of course, you can’t see that error on the client, so you have to log on to the server to see this screen:
At that point, I looked and looked, but there was no <sectiongroup> section in the DotNet4 web.config. Some searching pointed me to the ASP.NET 4 Breaking Changes document at
That document suggested that we needed to move the <configSections> out of the root DotNet2 web.config
back to the framework folder config files, which are located in:
Once I did that – everything worked fine. Now my DotNet4 application works fine under a DotNet2 parent root, just like it used to when I was running IIS6. Very strange. Good tip to remember for future use.
Written by Lyle Luppes.