4

我从一个空白的 MVC 3 Web 应用程序开始。我在本地 IIS 中为 localhost:80 创建了一个新网站,并将我的新 MVC 3 项目配置为使用该 Web 服务器而不是 VS 开发 Web 服务器。此时我可以正常运行和调试项目。但是如果我将它添加到我的 web.config 中,我会收到“无法在 Web 服务器上开始调试”错误。我可以选择启动而不进行调试,它工作正常。这是怎么回事?

<system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true" />
    <httpErrors errorMode="Custom" existingResponse="Replace">
        <remove statusCode="401"/>
        <error statusCode="401" responseMode="ExecuteURL" path="/Error401" />
    </httpErrors>
</system.webServer>
4

2 回答 2

0

httpErrors是仅由 IIS7 使用的新元素。这似乎有点奇怪,但是尝试在 web config 下添加以下内容system.web section

<customErrors mode="RemoteOnly"  defaultRedirect="~/error">
    <error statusCode="401" redirect="~/Error401" />
</customErrors>
于 2011-11-25T19:13:37.857 回答
0

我希望我能在这里给更多的希望,但是经过广泛的互联网研究,似乎没有解决方案。每当启用此配置节点时,即使在调试之外没有明显错误,调试也不会开始。

我以前注意到证书问题可能会导致发生类似的错误。显然调试器没有看到它期望的东西,因此失败了。

我的解决方案是只为我们的测试环境及以上环境启用此指令,同时将其禁用以进行开发。

于 2013-11-26T20:08:06.033 回答