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

时间:2012-03-30 09:27:12

标签: asp.net runtime-error

我创建了一个几乎空白的ASP.NET网站(1页)。我故意在Page_Load上编码除零错误。如果应用程序池设置为“ASP.NET 4.0管道:集成”,那么我没有看到页面加载错误,而是我得到:

  

运行时错误

     

描述:服务器上发生了应用程序错误。目前   此应用程序的自定义错误设置会阻止详细信息   查看应用程序错误。

文件夹 设置为IIS中的应用程序,并且存在显示错误的正确web.config条目,但由于某种原因,我无法让.NET向我显示正确的错误消息除非我将applciation池更改为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>

1 个答案:

答案 0 :(得分:1)

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

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

IIS App Pool Advanced Settings