Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Antes do ASP.NET Core 5.0, o Middleware do Manipulador de Exceções executa o manipulador de exceção configurado quando ocorre uma exceção. Se o manipulador de exceção, configurado por meio de ExceptionHandlingPath, não puder ser encontrado, uma resposta HTTP 404 será produzida. A resposta é enganosa porque:
- Parece ser um erro do usuário.
- Oculta o fato de que ocorreu uma exceção no servidor.
Para resolver o erro enganoso no ASP.NET Core 5.0, o ExceptionHandlerMiddleware lançará a exceção original se o manipulador de exceção não puder ser encontrado. Como resultado, uma resposta HTTP 500 é produzida pelo servidor. A resposta será mais fácil de examinar nos logs do servidor ao depurar o erro que ocorreu.
Para discussão, consulte o problema do GitHub dotnet/aspnetcore#25288.
Versão introduzida
5.0 RC 1
Comportamento antigo
O Middleware do Manipulador de Exceções produzirá uma resposta HTTP 404 se o manipulador de exceção configurado não puder ser encontrado.
Novo comportamento
O Middleware do Manipulador de Exceções gera a exceção original se o manipulador de exceção configurado não puder ser encontrado.
Motivo da alteração
O erro HTTP 404 não torna óbvio que ocorreu uma exceção no servidor. Essa alteração produz um erro HTTP 500 para tornar óbvio que:
- O problema não é causado por um erro do usuário.
- Uma exceção foi encontrada no servidor.
Ação recomendada
Não há alterações na API. Todos os aplicativos existentes continuarão a compilar e executar. A exceção gerada é tratada pelo servidor. Por exemplo, a exceção é convertida em uma resposta de erro HTTP 500 por Kestrel ou HTTP.sys.
APIs afetadas
None