Recently, being given more tasks involving minor administration of sites in IIS, I have ran into several issues that I have had to jump through hoops for in order to get my sites to work.
I just ran into quite an annoying problem that took me some searching to overcome. I want to make sure if anybody else runs into this problem, they do not waste as much time as I do searching for a solution.
My position requires me to look over some already existing sites and often create new ones in the blink of an eye in IIS. In this case, I was asked to create a new instance of a site from one of our development servers to one of our production servers. This seemed simple enough. All I would need to do as I have done many other time is copy over the application, and configure its directory and binding in IIS. Of course, we were encrypting certain values in the Web.config files, but that’s beside the point. Additionally, our web.config file contained several URL Rewrites, which will turn out to be very important.
After initializing the site, and configuring it I received an IIS 500.19 Internal Server Error similar to the following when browsing to the site.
HTTP Error 500.19 Internal Server Error – “The requested page cannot be accessed because the related configuration data for the page is invalid”
Detailed Error information:
Module: IIS Web Core
Notification: Begin Request
Handler: Not yet determined
Error Code: 0x8007000d
Requested URL: http://www.website.com/MyWebSite
Physical path: c:\inetpub\wwwroot\MyWebSite
Login Method: Not yet determined
Login User: Not yet determined
Config File: \\?
After searching Google and several blogs, including the following I was unable to come up with any solution. Although, if you are not using ReWrites in your web.config, I would recommend taking a look at any of the following sites.
- Troubleshooting HTTP 500.19 Errors in IIS 7
- Internal Server Error with Error Code 0x8007000d
- Error Messages in IIS 7.0
- StackOverflow Question on 500.19 with IIS 7.5
None of the proposed fixes said anything about rewrites until I had come across
this post regarding a missing rewrite module for IIS. It turns out that all along, the development server had the necessary ReWrite module installed, but the Production server did not. To install the ReWrite module, I went to Using the URL ReWrite Module and installed the correct module on the production server. That solved all my problems.
Following this fix, I cant help but feel that IIS should work on providing a better environment for diagnosing a problem such as this. It would seem fitting that in this event, I was informed that I was missing a required module.