【问题标题】:Why am I getting error 500.0 in when using IIS Express (significant debug info included)为什么在使用 IIS Express 时出现错误 500.0(包括重要的调试信息)
【发布时间】:2012-06-22 17:57:12
【问题描述】:

我在 VS2010 SP1 上创建了一个空白的 MVC 3 应用程序,并将该应用程序设置为使用 IIS Express。调试时出现错误 500.0 (0x80070585)

我能够使用 VS 开发服务器成功运行应用程序

我已将应用程序目录设置为每个人的完全权限,只是为了消除所有安全问题的可能性。我进一步验证了 IIS express 能够通过使用 SysInternals ProcMon 确认它来访问 web.config。 ProcMon 确实不显示 IISExpress 进程试图从我的应用程序目录中的任何其他文件中读取。

我已遵循以下问题中的建议,但它没有给我任何更好的信息。 HTTP 500 Internal Error - IIS websites

IISExpress目录下Logs或者TraceLogs目录下都没有生成日志,但是在Temp中创建了一个日志,不过用处不大。

Successfully registered URL "http://localhost:62017/" for site "MvcApplication1" application "/"
Registration completed for site "MvcApplication1"
Request ended: http://localhost:62017/ with HTTP status 500.0
Request ended: http://localhost:62017/ with HTTP status 500.0
Request ended: http://localhost:62017/ with HTTP status 500.0

我无法在事件查看器中找到任何消息

**更新:** 禁用防火墙,没有变化 通过命令行运行 IISExpress,没有变化

【问题讨论】:

    标签: visual-studio-2010 iis-express


    【解决方案1】:

    上周我遇到了同样的问题,该应用程序在 VS Studio 的开发 Web 服务器中运行完美。但是在 IISExpress 中随时出现 HTTP 错误 500。我这次的解决方案是:

    • 关闭 VS Studio - 使用 IISExpress 设置的解决方案
    • 进入:您的个人资料中的 /Document/IISExpress/config/
    • 重命名或删除applicationhost.config
    • 在 VS Studio 中打开您的解决方案
    • 将从 IISExpress 启动一个对话框 - 这将设置一个新的配置。
    • 尝试运行您的网络应用

    【讨论】:

    • 我自己也尝试了这些步骤,但它对我不起作用。不过感谢您的好回答!
    • 如果您使用的是 Visual Studio 2015,则 applicationhost.config 存在于您的解决方案文件夹中。见[这个] (stackoverflow.com/a/41208195/1977871)
    • 我在 VS 2013 上遇到了同样的问题。这个解决方案对我有用,只是在重命名文件并再次启动 VS 之后,我没有从 IISExpress 获得对话框。我刚按了 F5 就成功了。
    【解决方案2】:

    您可能在 Web.Config 文件中有一些 mime 代码,如下所示:

    <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
    

    如果是这样,您应该在添加之前删除 mimeMap:

    .
    ..
    ...
    ....
      </system.web>
      <system.webServer>
        <staticContent>
          <remove fileExtension=".svg" />
          <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
        </staticContent>
      </system.webServer>
    
    ....
    ...
    ..
    .
    

    【讨论】:

    • 你是对的——你到底是怎么找到这样的东西的?
    【解决方案3】:

    这可能与 IIS Express applicationhost.config 和您的 web.config 之间的冲突有关。

    向我的本地 web.config 添加了一个 mimeType,它已经存在于 applicationhost.config 中,并且 IIS Express 开始处理许多 500 错误。

    您可能还会在 Windows 事件日志中注意到此错误,“指定用于缓存压缩内容的目录无效。静态压缩正在被禁用。”

    更多信息:http://blog.degree.no/2013/04/the-directory-specified-for-caching-compressed-content-is-invalid-static-compression-is-being-disabled/

    我从 web.config 中删除了 mimeTypes,问题得到解决。

    applicationhost.config 位置:C:\Users\[User]\Documents\IISExpress\config

    【讨论】:

      【解决方案4】:

      重新安装 iis express 似乎已经解决了这个问题

      【讨论】:

        【解决方案5】:

        您是否使用任何 PLINQ(.AsParallel) 或 Parallel.For 或类似方法?我发现他们抛出的AggregateExceptions 没有被 MVC 很好地处理(在我的例子中,我得到了一个空白的 500 页,并且在日志/事件日志中没有任何内容)。

        我通过注意在 VS 的 Debug 输出窗口中记录的“第一次机会”异常来确定问题。尝试运行该站点,等待它出错,清除“调试”窗口并重新加载页面。有什么有用的吗?

        【讨论】:

        • 这个错误发生在一个空白的 MVC 应用程序中,没有任何逻辑
        【解决方案6】:

        您的配置文件可能有问题,特别是 web.config 和 applicationhost.config。

        我知道如何诊断此问题的唯一方法是将构建发布到常规 IIS,然后在 IIS 管理器中检查站点的“错误页面”模块。如果这些配置文件确实存在问题,您将在此处看到一个弹出窗口,其中包含以下内容:“无法添加类型的重复条目......”。相应地谷歌。
        如果“重复条目”属于“错误”类型,您可以尝试在httpErrors下方添加以下元素:

        <remove statusCode="404"/>
        

        也就是说,假设您在 HttpErrors 下方有一个 Error 元素,其 statusCode 为 404。(我有一次。)

        【讨论】:

        • 我对 web.config 进行了一些看似不错的更改,但还原这些更改解决了问题。
        【解决方案7】:

        在我的情况下,问题是由于使用 windows 身份验证 + firefox + 错误的域登录而导致的权限不足。

        详情: 我的开发机器正在使用 Windows 域“domA”,该应用程序将在接受来自域“domA”和“domB”的登录的环境中运行。虽然在网络服务器上两者都可以工作,但在我的开发机器上,只有我在“domA”中的帐户有足够的权限来访问应用程序的所有文件。在 IE 中默认使用“domA”,而在 FF 中,我得到一个登录对话框,在该对话框中我使用“domB”中的帐户登录。

        我知道令人困惑的问题,但也许其他人也有同样的情况。至少下次我遇到它时它会帮助我。 :)

        【讨论】:

          【解决方案8】:

          以防万一抓到别人,我有类似的错误,但问题是我已经更新了我的 web.config 并且应该有一个额外的“>”字符。所以格式错误的 web.config 文件可能会导致相同的行为。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2015-02-25
            • 1970-01-01
            • 2020-01-31
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2021-03-01
            • 2022-10-16
            相关资源
            最近更新 更多