错误:"无法在Web服务器上启动调试..." ASP.NET 4.0

37

在 IIS 服务器上创建网站时,我遇到了错误。我使用的是 Windows 7 和 Visual Studio 2010。

我是否需要为 IIS 注册或配置 asp.net 4.0?

15个回答

28

这里没有太多细节,但是当我尝试在Visual Studio 2010上调试一个我刚从3.5更改为4.0的Web应用程序项目时,我遇到了相同的错误。

以下命令行解决了我的问题:

cd %windir%\Microsoft.NET\Framework\v4.0.30319
aspnet_regiis.exe -i

只需确保在完成操作后进入IIS管理器,仔细检查应用程序池等配置,因为这可能会重置一些配置。


-i Install this version of ASP.NET and update IIS configuration at the root level to use this version of ASP.Net. - Walter Stabosz

24

这对我有帮助:

IIS中的.NET编译

注意: 仅为了截图目的选择了默认网站。

输入图像描述

Debug选项更改为True

输入图像描述


4
是的!不要忘记点击应用。 - GGGforce
这在我的情况下是个问题。非常感谢。 - Pedram
你如何进入 .NET 编译界面? - NoStressDeveloper
@avi 它是位于您的 IIS 管理器中根节点中的一个项目。 - Martin Braun

7

如果应用程序池使用的帐户密码更改,则可能会出现此错误。如果您在更改网络密码后开始收到此错误,则可能需要为本地网站使用的应用程序池更新密码。


6
在Visual Studio 2010中,这通常意味着Web.Config文件存在问题,无法在调试模式下显示。因此,只需使用Ctrl F5以正常模式启动应用程序,即可告诉您哪一行Web.Config有问题。

2

对我来说,这与这个解决方案有关:http://www.codeproject.com/Questions/83338/Does-not-have-write-access-to

该链接提供的解决方案可能会帮助您解决没有写入访问权限的问题。
 cd %windir%\Microsoft.NET\Framework64\v4.0.30319
 aspnet_regiis -i
 aspnet_regiis -ga "IIS APPPOOL\DefaultAppPool"

请注意,在我尝试将此操作应用于 Framework 文件夹后,它并没有生效;但在将其应用于 Framework64 文件夹后,它生效了。因此,建议您两个文件夹都进行操作以确保成功。


2

请检查在IIS中您的站点路径是否指向VS中您的Web项目路径。

我之前遇到过这个问题,是由于路径不匹配造成的。如果您已经配置了Visual Studio使用IIS,并且后来更改了路径,则IIS不会自动更新。您需要手动进入IIS并更新路径。


2

请确保您的网站在web.config文件中设置了调试(debug="true")

<compilation targetFramework="4.0" debug="true">

1
我花了几个小时来解决这个问题。最终似乎是因为在VisualStudio之外做出的一些更改让它变得混乱了。我不知道实际上问题是什么,但当我打开同一个解决方案的不同版本以便VisualStudio(或IIS)对IIS配置进行了一些魔法后,事情又开始工作了。然后我切换回原始的解决方案,配置再次被修改 - 现在调试又可以正常工作了。

1
我遇到过这种情况好几次 - 在我的情况下,通常是因为我没有更新我的 hosts 文件,所以 VS 试图定位外部 DNS 而不是我的本地 DNS。

1
如果您在IIS上安装了SSL证书,另一个原因可能是需要为您正在调试的应用程序从IIS管理器中禁用SSL。这是因为Visual Studio尝试将其作为http而不是https启动。

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