2013-05-29 14 views
5

Próbuję zapewnić, że nie są wysyłane niestandardowe komunikaty o błędach do użytkownika ze względów bezpieczeństwa. Ogólnie mam standardowe ustawienia komunikatów o błędach i działa idealnie dobrze. Używam tych znaczników w pliku web.config:Niestandardowe przekierowania błędów nie działają

<httpErrors errorMode="Custom"> 
    <remove statusCode="404" subStatusCode="-1"/> 
    <remove statusCode="401" subStatusCode="-1"/> 
    <remove statusCode="403" subStatusCode="-1"/> 
    <remove statusCode="501" subStatusCode="-1"/> 
    <remove statusCode="400" subStatusCode="-1"/> 
    <remove statusCode="411" subStatusCode="-1"/> 
    <error statusCode="403" path="/ErrorPages/UnAuthorized.aspx" responseMode="ExecuteURL"/> 
    <error statusCode="404" path="/ErrorPages/Oops.aspx" responseMode="ExecuteURL"/> 
    <error statusCode="501" path="/ErrorPages/Oops.aspx" responseMode="ExecuteURL"/> 
    <error statusCode="400" path="/ErrorPages/Oops.aspx" responseMode="ExecuteURL"/> 
    <error statusCode="411" path="/ErrorPages/Oops.aspx" responseMode="ExecuteURL"/> 
    <error statusCode="400" path="/Account/Login.aspx" responseMode="ExecuteURL"/> 
</httpErrors> 

Problem mam jest to zostało podkreślone, że niektóre komunikaty o błędach 403,400,501 nadal nie przekierowanie.

adresy URL, które powodują ten problem to:

www.example.com/con/ - asp.net error 

wwww.example.com/..%5CStorage%5CDocuments%5C8849145d-174a-41ab-9676-0ae19d6ab741 - 403 error 

i 411 błędów nieprawidłowej długości zawartości.

Odpowiedz

11

Czy używasz programu VisualStudio Development Server lub IIS7 Express? Jeśli używasz go, należy spróbować z:

<customErrors mode="On" > 
    <error statusCode="503" redirect="/Views/Shared/Error.htm"/> 
</customErrors> 

Jeśli nie, spróbuj tego:

<httpErrors existingResponse="Replace" defaultResponseMode="Redirect" errorMode="Custom"> 
    <remove statusCode="501"/> 
    <error statusCode="501" responseMode="Redirect" path="/ErrorPages/Oops.aspx"/>   
</httpErrors> 
+0

Dzięki używam IIS 7.5 na serwerze Windows. Twoja odpowiedź naprawiła wszystkie problemy, z wyjątkiem których nadal otrzymuję komunikat "Błąd HTTP 403. Adres URL żądania jest zabroniony." Wprowadzając: wwww.site.com/..%5CStorage%5CDocuments%5C8849145d-174a-41ab-9676-0ae19d6ab741 wszelkie sugestie dotyczące przekierowania do mojej niestandardowej strony błędu? – Westy10101

+0

? I zmienisz ustawienie statusCode = "403" w web.config na: Dandy

+0

Tak jak poniżej: Westy10101

Powiązane problemy