Как избежать пользовательских / серверных ошибок на веб-сайте? - PullRequest
8 голосов
/ 02 марта 2012

У меня есть веб-приложение asp.net, расположенное на сервере. Я хочу избежать всех пользовательских и серверных ошибок с моего сайта.

Для этого я использовал

<customErrors mode="RemoteOnly" defaultRedirect="~/ErrorPage/TryAgainLater.aspx">   <error redirect="~/ErrorPage/PageNotFound.aspx" statusCode="404"/> </customErrors>

Использование приведенного выше кода позволит избежать некоторых проблем. то есть.

Предположим, что "http://Exaple.com/Careers.aspx" Страница доступна на моем сайте, тогда

Случай 1. http://Exaple.com/Careersss.aspx «Все работало правильно, как указано выше».

Дело 2. http://Exaple.com/!@##Careersss.aspx «Не работает» Примечание: здесь я добавляю специальный символ

Дело 3: http://Exaple.com/Careersss.aspxxxx «Не работает» Примечание: добавьте символ после ".aspx"

дело 4: http://Exaple.com/Careersss.aspx/!@!@!@! «Не работает дизайн, ломая здесь». Примечание: добавьте '/' со специальным символом.

, пожалуйста, помогите мне, когда пользователь получит случай 2,3,4, тогда он автоматически перенаправится на страницу ошибки.

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 02 марта 2012

Если вы не хотите изменять настройки IIS, вы можете установить собственный обработчик ошибок 404 в Global.asax.Просто добавьте этот метод в наш файл с выделенным кодом Global.asax.cs:

protected void Application_EndRequest(object sender, EventArgs e)
{
    HttpResponse response = HttpContext.Current.Response;
    if (response.StatusCode == 404 && response.SubStatusCode == 0)
    {
        response.Redirect("/test/TryAgainLater.aspx?error=NotFound");
        response.End();
    }
}

Если это не решает проблему, и вы все еще получаете страницу ошибки 404, добавьте этот параметр в ваш файл web.config:

<configuration>
    <system.webServer>
      <modules runAllManagedModulesForAllRequests="true"/>
    </system.webServer>
</configuration>
1 голос
/ 02 марта 2012

Для вышеуказанной проблемы мы должны изменить настройки IIS, пожалуйста, обратитесь:

http://www.braintrove.com/id/46/page/2#Configure-IIS-for-custom-error-pages

http://blogs.msdn.com/b/webtopics/archive/2008/05/28/iis-7-0-http-error-pages.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...