无法在Web服务器上开始调试。已启动的URL的IIS工作进程当前未运行。

83

我在VS2010中有一个网站(而不是解决方案)类型的项目。

同时我已经在IIS7中将这个文件夹配置为网站。当我导航到http://myproject.local时,我可以正常浏览我的网站。

这证明了IIS正常地提供了该网站。

现在,当我尝试从VS2010运行项目以便进行调试时,我得到以下错误:

无法在Web服务器上启动调试。已启动URL的IIS工作进程当前未运行。

我已经将网站属性设置为在正确的URL上调用自定义服务器(IIS)。

既然很明显IIS正在提供网站,那么Visual Studio为什么会暗示启动的URL的IIS工作进程没有运行呢?

16个回答

106

这是一种非常间歇性的行为。 我通常每个月会遇到这个问题一两次。以下步骤可以轻松解决问题。

在尝试其他任何操作之前,请尝试iisreset

步骤1: >> 打开运行(Ctrl + R)>> 输入iisreset

如果这不起作用,请尝试第2步。

步骤2: 打开任务管理器 >> 进程 >> 选择进程并右键单击 >> 结束任务。 这应该会终止IIS工作进程。

enter image description here

如果第2步对您无效,则转到第3步。

步骤3:任务管理器 >>服务,重新启动IISADMIN。

有些人可能没有IISADMIN服务,因此如果您看到IISADMIN,请右键单击并重新启动。

enter image description here


太酷了!非常感谢! - Abhilab Das
我找不到IISADMIN服务。可能出了什么问题? - Niloofar
2
首先,我遇到了这个问题,你的帖子帮了我很多,所以谢谢 :) 其次,我想指出对于我个人来说,在服务下没有叫做IISADMIN的东西,但第一步仍然解决了问题,所以如果其他人也遇到了这个问题,只需要第一步就足以解决。 - thnkwthprtls
在第一步之后,如果您使用iisreset,则问题将得到解决。要重置iis,请在运行窗口中键入“iisreset”。 - Prabhat Maurya
1
第二步在第一步之后成功了(也许不需要第一步) - Furkan Ekinci
1
在我的情况下,iisreset没有帮助,也没有找到该进程正在运行,但是Windows重启有所帮助。以防万一有人需要。感谢您的建议。 - Constantine Ketskalo

73

我使用以下方法解决了问题:

  • 任务管理器 -> 删除 IIS 进程(在管理器中停止 IIS 无效)

  • 进入 IIS 管理器

  • 重新启动 IIS 服务

1
谢谢,已删除IIS进程,在IIS管理器中重新启动了Web应用程序。 - Dipendu Paul

7
我能够按以下方式解决问题:
  1. 使用管理员权限打开命令提示符,并执行IISRESET
  2. 打开IIS管理器,停止IIS服务器
  3. 在Visual Studio中清理解决方案
  4. 再次启动IIS服务器
  5. 在Visual Studio中重新构建解决方案
无法确定问题具体原因,但通过这些步骤,我能够使其正常工作而无需重新启动计算机。

5

我在IIS 8(Windows 8 x64)和托管在IIS中的ASP.NET MVC应用程序中遇到了同样的问题。

对我来说,解决方案是:

  1. 清理VS 2012中的解决方案
  2. 启动IIS管理器
  3. 停止IIS(这花了3分钟,我不知道为什么)
  4. 重新启动计算机
  5. 重新生成解决方案
  6. 开始调试

我不确定哪些步骤是必需的,我(幸运地)无法重现这个问题。我不知道是否有影响,但我在IIS中有7个应用程序池和3个不同的网站,但其中2个网站目前已停止。


对于我的情况,通过以管理员身份运行VS解决了问题。 - golamrabbi
在命令提示符中键入“iis reset”,它将重新启动由于失败/错误而停止的IIS进程。 - Ch'nycos

4

我有多个网站配置到不同的应用程序池中。正如这个答案所述,我已经移除了所有其他站点(这些站点已停止),只保留我需要的一个站点。

正如StuartLC所提到的: "如果另一个站点也映射到相同的IP/端口,即使它被停止禁用,它也会混淆VS"

希望这可以帮助...


我曾经遇到过同样的问题。似乎是另一个应用程序池引起了问题。我删除了停止的网站和应用程序池,问题得到了解决。谢谢! - mggSoft

2

我也遇到了同样的问题,只需重置应用程序池即可解决。


这确实解决了问题,但是当我随后使用VS调试器调试代码时,我的断点无法正常工作(尽管它们看起来没问题)。遵循此答案中的说明完全解决了该问题。 - Tim

1
我有同样的问题。 解决方法是检查hosts文件。"localhost"不应该有任何规则。

1
在我的电脑上,问题是我有两个对同一网站的投标,Visual Studio无法联系正确的网站。
我停止了“其他”网站(不是我尝试调试的那个),然后Debug操作就可以开始了。

0

0

我必须启用Windows身份验证来解决它。

打开窗口功能:控制面板->程序->程序和功能->打开或关闭Windows功能->Internet信息服务->万维网服务->安全性->Windows身份验证。

打开Internet信息服务(IIS)管理器,导航到您的网站,在IIS类别下双击身份验证图标,然后启用Windows身份验证。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接