2013-05-29 3 views
5

Я пытаюсь гарантировать, что нечеткие сообщения об ошибке отправляются пользователю по соображениям безопасности. Обычно у меня стандартная настройка сообщений об ошибках, и она работает отлично. Я использую эти метки в web.config:Пользовательские переадресации ошибок не работают

<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> 

Проблема, которую я имею в это было отмечено, что некоторые 403,400,501 сообщения об ошибках все равно не попадают.

URL-адреса, которые вызывают эту проблему являются:

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

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

и 411 ошибки от некорректной длины содержимого.

ответ

11

Вы используете VisualStudio Development Server или IIS7 Express? Если вы используете его, то вы должны попробовать:

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

Если нет, то попробуйте следующее:

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

Спасибо Я использую IIS 7.5 на сервере окон. В вашем ответе исправлена ​​все, кроме одной из проблем, которые я до сих пор получаю «Ошибка HTTP 403. URL-адрес запроса запрещен». При вводе wwww.site.com/..%5CStorage%5CDocuments%5C8849145d-174a-41ab-9676-0ae19d6ab741 каких-либо предложений о том, как перенаправить его на мою страницу ошибок? – Westy10101

+0

? И вы меняете параметр statusCode = "403" в файле web.config: Dandy

+0

Да, точно так же, как показано ниже: Westy10101

Смежные вопросы