Özel hatalarınız varsa, web yapılandırmasında RemoteOnly
olarak ayarlanmış demektir - bu, MVC'nin global.asax
- Application_Error
numaralı uygulama düzeyi hatası olayının hata yapmaması anlamına mı geliyor?Genel hatalar açıksa global.asax Application_Error olayı çalışmaz mı?
Uygulamamda belirli bir hata oluştuğunda ve siteyi uzaktan görüntülediğimde hiçbir hata kaydedilmediğini fark ettim. Ancak, sunucuya uygulamada erişirken ve aynı hata oluştuğunda, hata günlüğe kaydedilir.
Sadece insanlar için ilgi dışarı
<customErrors defaultRedirect="/Error/Application" mode="RemoteOnly">
<error statusCode="403" redirect="/error/forbidden"/>
<error statusCode="404" redirect="/error/notfound"/>
<error statusCode="500" redirect="/error/application"/>
</customErrors>
DÜZENLEME - Ben bitti tamamen özel hatalarını kapatarak ve şöyle Application_Error
yılında yeniden yönlendirme ile uğraşan:
bu
özel hata yapılandırma ayarıdır:protected void Application_Error(object sender, EventArgs e)
{
Exception exception = Server.GetLastError();
// ... log error here
var httpEx = exception as HttpException;
if (httpEx != null && httpEx.GetHttpCode() == 403)
{
Response.Redirect("/youraccount/error/forbidden", true);
}
else if (httpEx != null && httpEx.GetHttpCode() == 404)
{
Response.Redirect("/youraccount/error/notfound", true);
}
else
{
Response.Redirect("/youraccount/error/application", true);
}
}