asp.net - 看不到 ASP.NET 应用程序的真实错误消息?

标签 asp.net runtime-error

我创建了一个几乎空白的 ASP.NET 网站(1 页)。我故意在 Page_Load 上编写了除零错误。如果应用程序池设置为“ASP.NET 4.0 Pipeline: Integrated”,那么我不会看到页面加载错误,但会得到:

Runtime Error

Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed.

文件夹设置为 IIS 中的应用程序,并且存在显示错误的正确 web.config 条目,但由于某种原因,我无法让 .NET 显示正确的错误消息除非我将应用程序池更改为 ASP.NET Classic。为什么需要“经典”模式?我很烦恼,因为同一台机器上的所有其他站点都工作正常(IIS7),但我创建的任何新站点似乎都有同样的问题。

知道什么可能导致 IIS 无法识别此文件夹是应用程序或无法显示正确的错误消息吗?

编辑: Web.Config 是:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <customErrors mode="Off" />
        <compilation debug="true" targetFramework="4.0" />
    </system.web>
</configuration>

最佳答案

好吧,经过很长时间的研究并将设置与工作机器进行比较后,我发现答案实际上在于 .NET 4 应用程序池的设置。

当我在 IIS 的应用程序池高级设置屏幕中选中“启用 32 位应用程序”(参见屏幕截图)后,一切都开始正常运行。我只能假设某个地方安装了一些需要此设置才能使该应用程序池正常工作的东西,这阻止了我看到真正的错误消息。我仍然有兴趣知道是否有人发现这可以解决问题的原因,或者我如何显示“真实”错误消息,该消息在尝试使用此应用程序池而未选中“启用 32 位应用程序”时应显示。

IIS App Pool Advanced Settings

关于asp.net - 看不到 ASP.NET 应用程序的真实错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9940305/

相关文章:

asp.net - 在 .NET 4 MVC 2 中启用 Windows 身份验证

c# - toolkitscriptmanager 中的 EnableCDN 不下载缩小的文件

OpenCV::solvePNP() - 断言失败

c - 当您意外运行无限循环时会发生什么样的错误

c++ - 递增循环的 fatal error

c - 求截断至 k 位小数的小数值

javascript - 这个滚动功能可以吗?

c# - 我应该先用 C# 编写然后移植到 Web 吗?

c# - 带有 ASP.NET 网站的 NUnit

asp.net - 站点地图随时间随机中断