http错误503服务不可用.应用程序池停止访问网站

San*_*ndy 153 c# asp.net iis iis-7 localhost

有很多帖子,我现在尝试了很多东西.但无济于事.我自己基本上是一个Winforms开发人员,几天前我的公司正在开展网络计划,开始研究这个网络.

我有一个ASP.Net项目,我想在本地IIS上托管它.在Project properties -> Web我选择的设置中,Use Local IIS Server并给出了一个网址localhost/MyApp.我尝试在我的Firefox浏览器上访问它并收到错误HTTP Error 503. The service is unavailable.

以前我还有很多其他错误,我一个接一个地修复它们.但是对这一点感到震惊.这些是我项目中的设置

  1. 应用程序池设置为ASP.Net v4.0 Classic
  2. App Pool Enable 32 bit Application属性为true
  3. 应用程序池已启动
  4. 项目构建属性设置Any CPU为Target框架

但我想提一个奇怪的行为.以下是我所面临的问题

  1. 应用程序池已启动
  2. 我尝试访问我的本地网站(通过提供URL localhost/MyApp)
  3. 我收到错误了 HTTP Error 503. The service is unavailable
  4. 应用程序池已停止

我看过以下链接,我已经尝试过了.对于上述行为,我到达了这里.根据此链接,计算机名称不应该包含.在其中..我的计算机名称中没有任何内容但确实包含-在内.我的域名也包含.在其中.此外,我无法更改这些设置,因为我的办公室笔记本电脑和我们的TFS设置绑定到我们的域名和计算机名称.

任何人都可以帮我理解发生的事情吗?请指导我.谢谢.

编辑

我有以下代码Global.asax.Application_BeginRequest方法在同一个文件中为空.

protected override void Application_Start(object sender, EventArgs e)
{
    base.Application_Start(sender, e);
    String _path = String.Concat(System.AppDomain.CurrentDomain.RelativeSearchPath, ";",
                                         System.Environment.GetEnvironmentVariable("PATH"));
    System.Environment.SetEnvironmentVariable("PATH", _path, EnvironmentVariableTarget.Process);
    MyAppLog.Initialize();
    MyAppLog.WriteMessage("Application Started");
}
Run Code Online (Sandbox Code Playgroud)

更新

根据评论中的建议,我可以从Cassini运行该网站.

Dar*_*rov 288

可能发生这种情况的一个可能原因是IIS中的应用程序池配置为在某个自定义帐户下运行,并且此帐户不存在或提供了错误的密码,或者密码已更改.查看IIS中应用程序池的高级属性,以及它使用的帐户.

此外,事件日志可能包含有关应用程序池在第一个请求中立即停止的原因的更多信息.

在此输入图像描述

  • 就我而言,这就是问题所在.我更改了我的Windows密码,我的本地IIS for Windows 8.1停止工作.我不得不在多个地方更新每个项目.在IIS 8中,我必须通过右键单击池并单击"高级设置 - >过程模型 - >标识"来更新应用程序池中的凭据.然后,我必须通过转到"站点 - > MySITE - >高级设置 - >物理路径凭据"来更新站点本身 (34认同)
  • 即使帐户存在且密码正确,也可能已被禁用; 这会导致相同的症状. (4认同)
  • 我们最近更改了密码.这是解决方案.对于其他人,请参见此处的截图:https://i.imgur.com/rp8bnGy.png (3认同)
  • 是的,那就是解决方案.我的帐户密码经常更改.我忘记在"高级设置"中提供新密码 (2认同)
  • 检查事件日志是要走的路,总是帮助我解决这些问题,上次我检查事件日志,发现在 iis 中加载 rewrite.dll 失败,我去了控制面板中的程序和功能,修复了安装,一切恢复正常。 (2认同)

1_b*_*bug 38

好的,我有一个特定案例的另一个解决方案:如果您使用WINDOWS 10,并且您最近更新了它(使用Anniversary Update软件包),您需要按照以下步骤操作:

  1. 检查Windows Event Viewer- 按Win + R并键入:eventvwr,然后按ENTER.
  2. 在左侧Windows Event Viewer单击Windows Logs- > Application.
  3. 现在你需要IIS-W3SVC-WP在中间窗口找到一些ERRORS .
  4. 可能你会看到如下消息:

模块DLL >> path-to-DLL <<无法加载.数据是错误的.

  1. 您必须转到Control Panel- > Program and Features并且根据无法加载的dll,您需要修复另一个模块:
    • for rewrite.dll- 找到IIS URL重写模块2并单击Change- >Repair
    • for aspnetcore.dll- 找到Microsoft .NET Core 1.0.0 - VS 2015 Tooling ...并单击Change- > Repair.
  2. 重启你的电脑.

  • 接受的答案没有帮助。这做到了。谢谢! (3认同)

Dav*_*vid 14

我的情况是我的登录密码已更改,而应用程序池仍使用旧密码.因此,只需单击应用程序池的"高级设置",然后重置"身份".


Tar*_*run 10

我遇到了同样的问题,并使用事件日志对其进行了调试.首先它说:"无法找到源Microsoft-Windows-WAS的事件ID 5059的描述".

然后我使用开启/关闭转向窗口功能打开WAS .然后我在eventvwr中看到了这个"无法找到Microsoft-Windows-DistributedCOM".

最后,我放弃并删除了应用程序池(以前停止访问网站)并再次创建它,就像它一样.这解决了这个问题.


小智 6

大多数时间,它是由于AppPool设置而发生的.

请检查以下内容以解决此问题

  1. 检查Apppool服务是否正在运行.
  2. 检查AppPool的身份.
  3. 如果已更改该标识,请输入新密码.

以下图像显示IIS中的这些设置

在此输入图像描述


Zor*_* P. 6

对于使用Windows 10来到这里并将其更新为周年纪念更新的任何人,请查看此链接,它帮助了我:

https://orcharddojo.net/blog/troubleshooting-iis-apppool-crashes-status-503-after-windows-10-anniversary-update

如果链接断开:如果您的事件日志显示aspnetcore.dll,rewrite.dll(最常见,但也可能是其他人)无法加载,您必须修复丢失的项目.

以下是我们迄今为止遇到的两个具体问题以及如何解决这些问题,但您可能遇到完全不同的问题:

"C:\WINDOWS\system32\inetsrv\rewrite.dll" (reference)
    Go to "Programs and Features" (Win+X, F) and repair "IIS URL Rewrite Module 2".
"C:\WINDOWS\system32\inetsrv\aspnetcore.dll" (reference)
    Go to "Programs and Features" (Win+X, F) and repair "Microsoft .NET Core 1.0.0 - VS 2015 Tooling ...".
Run Code Online (Sandbox Code Playgroud)


Orh*_*lik 5

如果您有McAfee HIPS,并且在事件查看器应用程序日志中看到以下错误:

模块DLL C:\ Windows\System32\inetsrv\HipIISEngineStub.dll无法加载.
数据是错误的.

然后以下问题解决了我的问题:https: //kc.mcafee.com/corporate/index?page = content&id = KB72677&action = LIST

从页面引用:

  1. 单击开始,运行,键入资源管理器,然后单击确定.
  2. 导航至:%windir%\ system32\inetsrv\config
  3. 以管理员身份打开文件applicationHost.config,以便在记事本中进行编辑.
  4. 编辑<globalModules>部分并删除以下行:
    <add name ="MfeEngine"image ="%windir%\ System32\inetsrv\HipIISEngineStub.dll"/>

  5. 编辑<modules>部分并删除以下行:
    <add name ="MfeEngine"/>

  6. 编辑完applicationHost.config文件后,保存该文件,然后使用iisreset重新启动IIS服务器或重新启动系统.


thd*_*thd 5

我有类似的问题。我通过将我的用户添加到“本地安全策略”>“本地策略”>“用户权限分配”下的“作为批处理作业登录”策略解决了这个问题。


Swa*_*ale 5

当我第一次添加服务并为其创建应用程序池时。我在命令提示符下执行了“iisreset”,它起作用了。


Roe*_*smi 5

我遇到了这个错误,就我而言,原因是前一段时间我修改了用户密码,直到我重新启动应用程序池才出现 503 错误。

所以我修复了它在应用程序池/高级设置/身份/[...]/设置.../密码/确认密码上设置新密码


Abh*_*wal 5

在我的情况下,我检查了事件日志,发现错误是“无法读取配置文件”,试图从文件“ \\?\”,行号“ 0”中读​​取配置数据。数据字段包含错误代码。

错误代码为2307。

我删除了C:\ inetpub \ temp \ appPools中的所有文件,然后重新启动了iis。它解决了这个问题。