我刚刚在我们的临时服务器上部署了一个ASP.NET MVC3应用程序。每当发生错误时,我都无法获得详细的错误信息,即“死亡的黄屏”。相反,我只得到一个简单的“对不起,处理您的请求时出错”。消息。
我的Web.config包含customErrors off,即:
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
...
</assemblies>
</compilation>
<customErrors mode="off"/>
</system.web>
在这种情况下,我确切地知道潜在的错误是什么。(我忘记设置存储过程的权限。)但我真的想(重新)启用错误处理,这样我就可以快速找到这些But。当然,为了安全起见,一旦我们真正上线,我就会删除它。
有哪些其他设置可能会覆盖默认的ASP.NET错误处理?
发布于 2012-01-30 23:10:14
<customErrors mode="Off"/>
"Off"必须正确大写。
来自"Editing ASP.NET Configuration Files":
区分大小写
因为标记必须是格式良好的XML,所以标记、子标记和属性区分大小写。标记名和属性名是驼峰大小写的,这意味着标记名的第一个字符是小写的,任何后续连接的单词的第一个字母都是大写的。在大多数情况下,字符串属性值是Pascal-case,这意味着第一个字符是大写的,任何后续连接的单词的第一个字母都是大写的。异常分为true和false,它们总是小写。
记住,孩子们,你们每天都会学到新的东西。即使你学到的东西很差劲。
发布于 2012-01-30 23:07:22
您的Global.asax.cs
文件中可能有HandleErrorAttribute
全局过滤器。去掉那行。
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
}
发布于 2012-01-30 23:19:32
一个更好的长期解决方案可能是将Elmah添加到您的项目中,它将详细的日志记录添加到您的web项目中。
包括:
F214
https://stackoverflow.com/questions/9065866
复制相似问题