A quick fix:
IIS -> Application Pool -> DefaultAppPool -> Advanced Settings -> Load User Profile = False
質問
surface pro 2 128GB
Win8.1 update1
intall IIS8 from [Turn Windows Features ON/OFF]
after installing,
1. when visit http:// localhost in IE11, it said Service Unavailable HTTP 503 Error
2. the started DefaultAppPool has auto stopped..
==========================
My question is:
How can I fix this error?
==========================
%windir%\system32\logfiles\httperr:
#Software: Microsoft HTTP API 2.0
#Version: 1.0
#Date: 2014-05-07 03:50:18
#Fields: date time c-ip c-port s-ip s-port cs-version cs-method cs-uri sc-status s-siteid s-reason s-queuename
2014-05-07 03:50:18 ::1%0 1501 ::1%0 80 HTTP/1.1 GET / - 1 Client_Reset DefaultAppPool
#Software: Microsoft HTTP API 2.0
#Version: 1.0
#Date: 2014-05-07 03:51:56
#Fields: date time c-ip c-port s-ip s-port cs-version cs-method cs-uri sc-status s-siteid s-reason s-queuename
2014-05-07 04:07:49 ::1%0 1636 ::1%0 80 HTTP/1.1 GET / 503 1 AppOffline DefaultAppPool
2014-05-07 04:07:55 ::1%0 1637 ::1%0 80 HTTP/1.1 GET / 503 1 AppOffline DefaultAppPool
2014-05-07 04:08:06 ::1%0 1656 ::1%0 80 HTTP/1.1 GET / 503 1 AppOffline DefaultAppPool
2014-05-07 04:08:06 ::1%0 1659 ::1%0 80 HTTP/1.1 GET /favicon.ico 503 1 AppOffline DefaultAppPool
2014-05-07 04:08:06 ::1%0 1660 ::1%0 80 HTTP/1.1 GET /favicon.ico 503 1 AppOffline DefaultAppPool
2014-05-07 04:08:06 ::1%0 1661 ::1%0 80 HTTP/1.1 GET /favicon.ico 503 1 AppOffline DefaultAppPool
2014-05-07 04:12:05 ::1%0 1763 ::1%0 80 HTTP/1.1 GET / 503 1 AppOffline DefaultAppPool
=============================================
I found an error in EventLog:
USER: IIS APPPOOL\DefaultAppPool
Windows cannot log you on because your profile cannot be loaded. Check that you are connected to the network, and that your network is functioning correctly.
DETAIL: Only part of a ReadProcessMemory or WriteProcessmemory request was completed
解決
A quick fix:
IIS -> Application Pool -> DefaultAppPool -> Advanced Settings -> Load User Profile = False
他のヒント
The FastcgiTesting-Register may need to be removed from Modules in IIS. More information here:
https://blogs.msdn.microsoft.com/vpandey/2009/08/04/http-error-503-the-service-is-unavailable/
After some investigation I found out that in my case the issue was caused due to an application pool account authentication problem. My ASP NET app runs on a Docker container, and within it I create a password free administrative account and configure the application pool for using it.
The catch was that I forgot to set the password expiration policy, and apparently after the default expiration period the issue started occurring whenever the container was restarted. So now I added another command to my script to prevent the password from expiring.
Here is the complete configuration script:
# create admin user
NET USER admin /add
NET LOCALGROUP Administrators admin /add
WMIC USERACCOUNT WHERE "Name='admin'" SET PasswordExpires=FALSE
# configure app pool
Import-Module WebAdministration
Set-ItemProperty IIS:/AppPools/DefaultAppPool -name processModel.identityType -Value SpecificUser
Set-ItemProperty IIS:/AppPools/DefaultAppPool -name processModel.userName -Value "admin"
Set-ItemProperty IIS:/AppPools/DefaultAppPool -name processModel.password -Value ""
Be aware not to run it outside of an isolated container! Since it creates a potentially dangerous password free admin account.