在asp.net中,当出现错误时,我无法看到服务器的详细消息。我的意思是,当你打开浏览器并导航到说http:// [errorpage] .com并且页面显示“内部服务器错误 - 服务器正忙”这样的东西时 - 你肯定知道服务器正忙...但是与我的应用程序我只得到错误503 - 但我不能去Mozilla浏览器去,并看不到整个错误消息。我试图抓住并显示异常 - 但是......不。我也尝试用常规exp解析源代码。 - 但我猜网络会在出现错误时停止,并且无法进行解析 - 同样......没有尝试:同样的事情。
答案 0 :(得分:1)
通常,请勿在实时网站上启用此功能。在您的web.config中,添加/编辑以下内容:
<customErrors mode="Off" />
这将开始显示有关错误的详细信息。但同样,请勿在现场服务器上执行此操作,或至少不要永久执行此操作,因为这会对安全造成危害。
答案 1 :(得分:0)
最好的方法是在代码中实现错误处理,然后在某处保存错误(数据库,文件......)然后你可以查看你的文件并获得完整的错误
e.g。
try {
//your code here
}
catch(Exception ex)
{
//write to file ex.ToString() to see whole stack trace, or ex.Message to see just message like "index out of bounds"
}
如果您想在浏览器中获取错误,请在配置文件中将其打开
请查看此链接了解详情http://msdn.microsoft.com/en-us/library/h0hfz6fc.aspx
答案 2 :(得分:0)
你的问题有点狂躁,但如果发生这种情况,你必须考虑堆栈上的错误处理:
try{
//Something
}
catch(Exception){
//Handle it some how
throw new Exception("Broken");
}
然后在抛出新异常之前,这将释放所有调用堆栈。如果发生这种情况,可以这样解决:
try{
//Something
}
catch(Exception){
//Handle it some how
throw;
}
这继续抛出堆栈跟踪的原始异常。
答案 3 :(得分:0)
如果您打开ASP.NET Health Monitoring,则ASP.NET会将错误的详细信息记录到Windows事件日志或您指定的任何其他目标。