【问题标题】:IIS ApplicationPoolIdentity 503 errorIIS 应用程序池标识 503 错误
【发布时间】:2011-10-08 21:13:41
【问题描述】:

我最近移植到另一家托管公司 (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 或任何地方更改任何内容。

【问题讨论】:

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


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • IIS 7 改变了一些事情:权限,我认为这是其中之一。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-02-21
      • 2015-04-19
      • 2012-07-03
      • 2011-01-07
      • 2017-07-01
      • 2010-09-29
      • 2017-12-15
      相关资源
      最近更新 更多