I just upgraded one of my machines to Windows 10 from Windows 8.1. This is a development machine and it has a ton of IIS Web sites and virtuals on it. The Windows upgrade (build 10162) went very smooth and everything seems to be working rather well – all except for IIS.
Accessing any link on the local machine I get this lovely error:
503 Server Unavailable
It looked like IIS was installed properly and the service is running. I can use IISReset to restart IIS and I can see the admin service running. Application Pools are also showing running, but any attempt to access any IIS page results in an immediate 503 error.
After some spelunking around in the Event Viewer I found that the problem is the IIS Rewrite Module:
This is the IIS Rewrite Module that gets separately installed from the Web Platform Installer.
IIS Rewrite Module Problem
It turns out that there's a new version available that's more recent (but doesn't change the version number), and that needs to be installed in order to work. The version I found on the WebPI was dated a month ago (5/27/2015), and I suspect it's meant to address just the type of problem I've been running into with my upgrade.
To install the module:
- Uninstall the Rewrite Module from Windows Features
- Go to the Web Platform Installer
- Pick Url Rewrite from Products | Server section and install
- Restart IIS
And bingo – my IIS installation is up and running again.
Several people tweeted mentioning that they ran into these problems repeatedly with successive Windows 10 updates, so it's quite possible that the issue has to do with settings rather than an old version. Before going through the above steps you might want to just try to Repair the UrlRewrite installed feature.
Watch for External Module Updates
In searching around I found a few other reports of people having issues with external module updates in IIS. So if your server fails with errors:
- Check the Event Log
- See if errors relate to any external Modules not installed by the main IIS install
- Do a Repair Install or Uninstall Reinstall the Module if there are newer versions
Windows 10 seems to have done a pretty good job updating most of my Windows components, including all native IIS components and Web sites. However, in this case the Rewrite module is externally installed from WebPI so it's not a standard Windows file and therefore wasn't updated. This can be a sleeper bug depending on the components you are dealing with. Essentially – double check anything that was installed through Web PI and make sure it all still works since those external components did not get updated in the Windows 10 migration.
I'll be at DevIntersection in Vegas this fall giving sessions on ASP.NET Core with Angular and Localization. Thinking of coming? Use discount code STRAHL and save a few bucks. If you do be sure to stop by and say hello!
Other Posts you might also like