This is probably one of the more annoying errors I have ever encountered with IIS7. All the information I was finding for it online was very vague and my symptoms were very different from everyone else’s. So here are some tips I have on it:
The first thing to test is if you can run a basic html (*.htm) page. Create an html page with the *.htm extension and put some basic text in the file for recognition. Browse to the file, if you get this error even when trying to run a basic html page then you have a bigger problem.
This problem is more than likely caused by the web.config, in order to verify this claim temporarily remove or rename the web.config. You can rename it to web.config.bak temporarily. Browse to the html file you created earlier, if you can browse to it okay then it is your web.config that is causing the issue. Try replacing it, if the issue persists then it is not necessarily the schema causing the problem. It could be something in your web.config that IIS doesn’t recognize because a module is missing from IIS.
The final solution found for my particular case on was to simply remove a section out of the web.config that was the root cause of the error. There was a section that looked like this:
Where the node “<otherstuff />” can be ignored, it is literally other stuff that is normal to find in that section, so ignore it.
In order for this rewrite rule to work the rewrite module MUST be installed in IIS and since it wasn’t I was getting this error. The distinction for the error I was getting was that “Config Error” and “Physical Path” were both blank which was not helpful at all. I will try to get a picture of what I am talking about.
Some Helpful Links:
http://blogs.iis.net/webtopics/archive/2010/03/08/troubleshooting-http-500-19-errors-in-iis-7.aspx
http://support.microsoft.com/kb/942055