Jak ustawić plik web.config, aby wyświetlał pełny komunikat o błędzie

140

Wdrożyłem moją aplikację MVC-3 w systemie Windows Azure. Ale teraz, gdy o to staging urlproszę, pokazuje mi się (Przepraszamy, wystąpił błąd podczas przetwarzania żądania) . Teraz chcę zobaczyć pełny komunikat o błędzie, domyślnie ukrywa go ze względów bezpieczeństwa. Wiem, że możemy to zrobić za pomocą pliku web.config. Ale jak?

King Kong
źródło

Odpowiedzi:

249

nie wiem, czy to będzie działać w swoim scenariuszu, ale spróbuj dodać następujące wpisy do web.configUnder <system.web>:

  <system.web>
    <customErrors mode="Off" />
  ...
  </system.web>

działa w moim przypadku.

Zobacz także:

CustomErrors mode = „Off”

Jim Tollan
źródło
20
Ponadto dodaj następujący w < System.webServer > dodaj <httpErrors errorMode = "Detailed" />
Kasper Halvas Jensen
128

Może to również pomóc, wyświetlając pełne szczegóły błędu w przeglądarce klienta.

<system.web>
    <customErrors mode="Off"/>
</system.web>
<system.webServer>
    <httpErrors errorMode="Detailed" />
</system.webServer>
Meer
źródło
1
Aby uzyskać więcej szczegółów, zobacz element customErrors (schemat ustawień ASP.NET)
stomy
Zobacz httperrors
Stomy
Jest to lepsze niż akceptowana odpowiedź, ponieważ większość programistów chce zobaczyć szczegóły zamiast YSOD bez żadnych szczegółów.
Spencer
12

Jeśli używasz ASP.NET MVC, może być również konieczne usunięcie HandleErrorAttribute z pliku Global.asax.cs:

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
    filters.Add(new HandleErrorAttribute());
}
Sandrino Di Mattia
źródło