IIS ApplicationPoolIdentity 503错误

时间:2011-07-19 20:31:25

标签: iis windows-server-2008-r2 access-rights

我最近移植到另一家托管公司(VDS),并在新服务器上安装了IIS 7.5 Express,最新版本的PHP和MySQL。

然后我将文件从旧服务器复制到新服务器(除了网站文件夹的内容之外没有任何内容,因此没有配置文件或网站本身除了web.configs之外的任何内容),设置网站。我试图访问一个网站,我收到了503 Service Unavailable消息,在服务器上远程和本地尝试,没有变化。

尝试在每个网站上,甚至在默认网站上,并且没有变化:仍然是503。 我已经检查了网站(以及所有孩子)文件夹的权限,我的帐户,网络服务,管理员都可以有效地完全控制所有内容。

所有应用程序都在DefaultAppPool中运行,该应用程序在ApplicationPoolIdentity下运行。尝试创建一个新的应用程序池,在那里移动网站,没有运气,尝试在池设置中将“加载用户配置文件”设置为False(在此处阅读HTTP Error 503 on IIS 7.5 after SP Install),没有变化。

事件查看器以非常详细的方式说:

"A process serving application pool 'DefaultAppPool' terminated unexpectedly. The process id was '2356'. The process exit code was '0xfffffffe'."

,没有别的。此错误的五倍,并且由于快速保护,池已关闭。我重新启动池,再试一次,没有任何改变。无论我是想获得.aspx,.php还是静态内容。这是最奇怪的部分:当我将应用程序池设置为在LocalSystem下运行时,它可以工作。没问题。但其他一切都失败了。

我已经检查过十次网站文件夹,更改,删除,重新添加权限等尝试了一切但没有变化。好像还有另一个文件,我忘了检查池的用户无法访问。但事件查看器并没有帮助我。这开始于新的服务器,我在安装完所有内容后尝试了,所以我不知道这是什么开始发生的。我显然不会在LocalSystem下运行。甚至我自己的用户Administrator也不起作用。

唯一有效的身份是LocalSystem。我的用户LocalService,NetworkService,ApplicationPoolIdentity都以同样的方式失败。我疯了,我99%肯定这是用户权利问题。但是所有的网站文件都是可访问的,我没有在system32 inetconfig或任何地方更改任何内容。

2 个答案:

答案 0 :(得分:3)

好的,再次找到了我自己的答案。 进程w3wp.exe在DefaultAppPool用户下运行,而不是在NETWORK SERVICE下运行。我不知道为什么它不能在NETWORK SERVICE下运行,但经过一些研究后发现该进程需要访问C:\Windows\System32\inetsrv\config\schema并且给予NETWORK SERVICE访问权限并没有改变任何东西。我巧合地找到了关于DefaultAppPool用户的地方,给了读权限,并且通过启动池,我的所有网站都开始完美运行。非常奇怪,我一直认为IIS进程默认在NETWORK SERVICE下运行,我确信我没有更改任何设置。

答案 1 :(得分:0)

尝试在命令下运行并进行一些更改

appcmd set apppool /apppool.name: <YourAppPoolHavingIssuesHere> /managedRuntieVersion:v<.net Framework version here>