问题
With Windows 8.1 finally released to MSDN/Technet today I came across the following issue running my ASP.NET application after doing an in place upgrade with Win 8.1 RTM:
Service Unavailable
HTTP Error 503. The service is unavailable.
- The AppPool has died and shows a status of
Stopped
- The IIS log has nothing
There's a clue is in the Windows Application log which contains this error
The Module DLL C:\WINDOWS\system32\inetsrv\rewrite.dll failed to load. The data is the error.
How can I recover my IIS to make it work again?
回答1:
It looks like a simple uninstall and re-install of the rewrite module will do the trick.
Edit: As others have said - try a repair first - if it works then that should be faster.
It doesn't look like the Microsoft Web Platform Installer is able to uninstall it so just go to Programs and Features
to uninstall it.
You'll find it listed as IIS URL Rewrite Module 2
and just click the Uninstall
button on top.
Then reinstall it from here:
http://www.iis.net/downloads/microsoft/url-rewrite
Make sure your App Pool is started - or just restart IIS and it should all work again.
Edit: 8/30/16 : A similar but unrelated error can occur if you have the 'new' .NET core installed and update to Win 10 Anniversary edition. See here: https://github.com/aspnet/Home/issues/1583 - Running a repair on VS 2015 Tooling Preview should fix it. Wanted to add it here since the errors are very similar to this answer.
回答2:
I got this Event Log error after updating Win8.1 to Win10. To fix, go to the Control Panel -> Programs and Features, locate IIS URL Rewrite Module 2, right click and select Repair (it's quick). Next, restart your stopped AppPool(s). Should be OK now.
No need to uninstall nor reinstall.
Gary Davis
回答3:
Don't need to uninstall. Just do a Repair instead, and it will works.
回答4:
For some weird reasons, the only solution for me was to install previous version of the module, from https://www.microsoft.com/en-us/download/details.aspx?id=7435
回答5:
I just ran in to this issue after an update. All of the app pools where stopped! Starting them resolved the issue.
回答6:
I struggled with similar issues last night.
It started out with a complaint about missing redirect.dll. After installing IIS' Redirect feature, that log message disappeared and all I was left with was a bunch of error messages from WAS. It tried starting my application pool five times until giving up.
A listener channel for protocol 'http' in worker process '120' serving application pool 'my app pool' reported a listener channel failure. The data field contains the error number.
The error code was "8007007E" (File not found according to google).
I then installed ProcMon from sysinternals.com and every time the w3wp process complained about "NAME NOT FOUND" right before terminating, I googled and installed the corresponding IIS feature. I repeated this until I had installed them all and got everything working again.
Installing everything is not a good solution, but I do not have time to investigate deeper right now.
回答7:
I came across similar symptoms after changing my domain password. I had to also reset my password in my (hard coded!) App Pool settings on my dev box.
回答8:
I had a similar issue with "httpplatformhandler.dll failed to load". Again the solution was to download the appropriate httpplatformhandler install msi from http://www.iis.net/downloads/microsoft/httpplatformhandler and then run a repair.
回答9:
The Repair worked for me after updating to W10 Insider Preview 160826-1902
回答10:
I encountered the same problem in Windows Server 2012 R2. After I update Windows Updates to newest, it works.
来源:https://stackoverflow.com/questions/18714709/windows-8-1-windows-10-breaks-my-asp-net-iis-service-unavailable