【问题标题】:C# MVC: Cannot Debug in IIS ExpressC# MVC:无法在 IIS Express 中调试
【发布时间】:2018-05-24 14:30:31
【问题描述】:

我刚换了笔记本电脑。我正在移动我在 MVC 4 中完成的旧项目,并在 Visual Studio 2012 中完成。我的新笔记本电脑中的当前 Visual Studio 是 2017 版本。

当我想调试我的 MVC 应用程序时出现问题。运行调试后出现此错误:

HTTP 错误 403.14 - 禁止 Web 服务器配置为不列出 这个目录的内容。

最可能的原因:没有为 请求的 URL,并且服务器上没有启用目录浏览。

我从未将我的应用程序设置为在目录浏览器中列出。我的应用程序是一个 MVC 应用程序,它将运行 global.asax 并重定向到我的主页。

我该如何解决这个问题?

【问题讨论】:

  • 尝试更改项目属性 > Web > 项目 URL 上的端口,以便生成新的虚拟目录。您使用的是 IIS Express 还是 IIS?
  • 我尝试将其更改为 localhost:9999/ 但仍然出现相同的错误。我使用 IIS Express 来调试它。

标签: c# asp.net asp.net-mvc visual-studio asp.net-mvc-4


【解决方案1】:

启用目录浏览。 将此保存到您的网络配置文件中,然后重命名添加 value="pagename.aspx"

 <system.webServer>
    <defaultDocument>
       <files>
          <add value="yourpage.aspx" />
       </files>
    </defaultDocument>
    <directoryBrowse enabled="false" />
</system.webServer>

 <system.webServer>
    <directoryBrowse enabled="true" />
</system.webServer>

您还可以从 IIS 启用目录浏览

  • 打开命令提示符,然后转到计算机上的 IIS Express 文件夹。例如,在命令提示符下转到以下文件夹:C:\Program Files\IIS Express
  • 键入以下命令,然后按 Enter:

    appcmd set config /section:system.webServer/directoryBrowse /enabled:true

【讨论】:

  • 我不想启用目录浏览。我想运行我的 MVC 应用程序。
  • 是的,但是您的错误表明您必须启用目录浏览才能运行您的应用程序
【解决方案2】:

确保您已在新笔记本电脑的 hosts 文件中定义了默认应用程序。

这是许多人头疼的原因。

在下面看到它:

C:/Windows/System32/Drivers/etc/hosts

【讨论】:

    【解决方案3】:

    这可能是 HTTP Error 403.14 - Forbidden The Web server is configured to not list the contents

    不同的上下文,因为您尝试在 IIS express 中进行调试并且您没有在 IIS 中托管应用程序,但是错误是相同的,答案值得一试。可以让你走上正确的道路。

    会发表评论但还没有足够的代表。

    【讨论】:

      【解决方案4】:

      遇到同样的错误,但在 VS2017 上是 MVC5。最终发现我收到了错误,因为我在Global.asax 中将Application_Start() 标记为静态。我这样做是因为我犯了遵循此代码分析建议的错误:

      【讨论】:

      • 为我节省了一些时间。谢谢。
      • 谢谢,我没有那个文件“Global.asax”。
      猜你喜欢
      • 1970-01-01
      • 2017-03-14
      • 1970-01-01
      • 2013-10-28
      • 1970-01-01
      • 1970-01-01
      • 2021-02-10
      • 2016-08-25
      • 2016-08-07
      相关资源
      最近更新 更多