【问题标题】:Unable to start debugging on the web server. The remote server returned an error: (404) Not Found. Error when starting debug in Visual Studio无法在 Web 服务器上开始调试。远程服务器返回错误:(404) Not Found。在 Visual Studio 中启动调试时出错
【发布时间】:2017-10-31 07:59:08
【问题描述】:

我已经设置项目在 IIS 上运行一段时间,当我按下 F5 时,它确实连接没有问题。但是最近这停止了工作,当我按 F5 / 按 Debug->Start debugging 时确实收到了这个错误:

无法在 Web 服务器上开始调试。远程服务器 返回错误:(404) 未找到。

这是我的设置:

我不确定发生了什么,可能是一些 VS 更新或 Windows 更新,但我尝试在任何地方进行谷歌搜索,但没有任何效果。附加到进程像以前一样工作正常,但这种更简单的方法不再奏效了。

更新:

已尝试 Process Monitor 找出问题所在,看起来 w3wp 尝试访问路径 MyProjectFolder\debugattach.aspx,结果是“未找到名称”。不知道这是否是问题的根源。

【问题讨论】:

  • 关闭 Visual Studio 并打开解决方案所在的文件夹。尝试删除名为 ,vs 的隐藏文件夹,然后打开 Visual Studio 并再次尝试调试
  • 不幸的是,这没有帮助
  • 您是发布到您的 IIS 还是只在项目属性中使用 IIS Express 运行它,如果您发布它,您可以直接在本地浏览器中访问该页面吗?您可以使用“启动而不调试(Ctrl+F5)”运行您的应用程序吗?基于 404 错误,如果您将应用发布到 IIS,请确保为正确版本的 ASP.NET 配置了应用程序池。
  • 我不发布站点,路径只是指向解决方案所在的同一位置。。不调试就开始工作正常,整个站点工作正常。我已经阅读了正确的 ASP.NET 版本,但它并没有随着时间的推移而改变,我仔细检查了它是否设置为 4。我使用 4.5.2,但我怀疑它应该是一个特殊的选择吗?跨度>
  • @Ilya Chernomordik,所以这是本地网络应用程序,如果是这样,您能否分享有关您的项目属性的屏幕截图->网络?您是否选择“IIS Express”作为服务器?您是否在调试器下启用“ASP.NET”?

标签: asp.net .net debugging iis visual-studio-2017


【解决方案1】:

看来我的一位同事编辑了web.config 并添加了请求过滤,他删除了“DEBUG”动词。这不允许在 F5 上进行调试。 添加它(或删除请求过滤)后一切正常。

附:描述了许多其他可能出现类似错误的问题here

【讨论】:

  • 嗨,我也有同样的问题,我在 web.config 中添加了以下设置 在这个设置之后我得到了上述错误,如果我删除它那么它工作正常吗?有人知道为什么会这样吗?或者我需要允许任何特定的动词来允许调试?我想保留这些设置,也想启用调试。
  • 你需要允许DEBUG动词
  • 解决方案:coderjony.com/blogs/…
  • @AshishShukla 这也正是导致我的问题的原因,我将该块移至 Web.Release.config 以便在我们部署到 PROD 时它最终会出现在配置文件中。从本地 web.config 文件中删除该部分后,我终于能够针对本地 IIS 实例进行调试
【解决方案2】:

就我而言(Windows 10 和 Visual Studio 2017),我必须在 Internet Information Services 下安装 ASP.NET 3.5ASP.NET 4.7

Click here to see the solution

【讨论】:

    【解决方案3】:

    旧帖子,但我最近遇到了这个问题,并确保在“程序和功能”(Windows 10)中启用了以下设置为我解决了这个问题:

    【讨论】:

      【解决方案4】:

      这发生在我身上,因为我使用 Rewrite 模块重定向到 https。我正在运行https://localhost/WebSiteName,但已将我的机器名称放在 IIS Mgr、默认网站、绑定中的 https 绑定中。当我删除机器名称时,它起作用了。

      【讨论】:

      • 这个小智慧救了我的培根。我讨厌 IIS 配置的严重阻碍(实际上我讨厌所有形式的所有 Microsoft 配置复杂性)。相反,我选择在 web config 中注释掉 Rewrite 模块。站点现在在调试模式下工作。
      【解决方案5】:

      最近我在 VS2013 Professional 中遇到了同样的问题,我立即收到错误“无法在 Web 服务器上开始调试”。我观察到,每当我的当前页面是 MVC 视图 (.cshtml) 文件并开始调试时,错误每次都有窗口提示,将我项目中的当前文档切换到控制器(.cs)文件,并开始调试,它可以正常工作。 所以我的解决方法是调试我的代码,我必须在(.cs)文件而不是(.cshtml / web.config)文件上。希望对您有所帮助!

      【讨论】:

        【解决方案6】:

        这个问题的另一个原因是你没有运行 visul studio 以管理员身份运行

        【讨论】:

          【解决方案7】:

          我的问题与 405 相关,如下所示

          使我的项目属性(WebBuild)如下所示后,我的问题得到了解决

          【讨论】:

            【解决方案8】:

            另请参阅 HTTP Error 404.3-Not Found in IIS 10 因为它帮助了我(需要在 Windows 功能中启用 HTTP 激活)

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2019-06-03
              • 2012-09-20
              • 2018-04-17
              • 2014-01-19
              • 2018-08-06
              • 1970-01-01
              相关资源
              最近更新 更多