2012-03-30 89 views
3

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

运行时错误

说明:上出现应用程序错误服务器。此应用程序的当前 自定义错误设置阻止查看应用程序错误的详细信息。

文件夹设定在IIS和正确的web.config项应用程序显示错误的存在,但由于某些原因,我不能让.NET来告诉我,除非我正确的错误消息将应用程序池更改为ASP.NET 经典。为什么需要“经典”模式?因为同一台机器上的所有其他站点都工作正常(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> 
+0

u必须启用调试属性在asp.net我认为 – Prabhavith 2012-03-30 09:30:49

+0

你有没有正确设置通过在web.config中?你能在这里发布那个配置部分吗? – walther 2012-03-30 09:31:42

+0

已在上面添加......我也尝试过 NickG 2012-03-30 09:40:04

回答

1

OK,fidding很长一段时间,并设置比较一个工作机器,我发现后,答案其实在于的设置。 NET 4应用程序池。

当我在应用程序池的IIS的高级设置屏幕中选中“启用32位应用程序”(请参阅​​屏幕截图)后,所有内容都开始正常运行。我只能假设某些地方需要此设置才能使此应用程序池正常工作,并阻止我看到真正的错误消息。我仍然有兴趣知道是否有人发现为什么这样可以解决问题,或者如何在显示尝试在未选中“启用32位应用程序”的情况下使用此应用程序池时应显示的“真实”错误消息。

IIS App Pool Advanced Settings

+0

你会得到那个通用错误,因为当你试图请求你的应用程序时,这个错误立即发生。这意味着你的除以零误差还没有发生。由于应用程序池不允许使用32位应用程序(您的应用程序为32位),因此它在管道的早期抛出了一个错误,IIS不得不显示该通用错误。 – CheckRaise 2012-03-30 15:09:40

+0

但是真的没有办法看到那个错误是什么?我想知道我安装了什么,需要打开“启用32位”选项。 – NickG 2012-03-30 18:14:41

+0

64位操作系统将是原因。 – CheckRaise 2012-03-30 20:14:59

相关问题