Вывод искаженной страницы ошибок с помощью Gzip в ASP.NET / IIS7 - PullRequest
16 голосов
/ 10 марта 2010

Я реализовал метод GZipEncodePage Рика Страла на моем сайте, и он отлично работает для самого сайта. Однако, когда мой код выдает исключение, страница «Ошибка сервера» выглядит примерно так:

garble garble
(источник: x01.co.uk )

Я пытался подключиться к Application_Error, пытаясь удалить заголовки GZip, но безрезультатно. Как я могу отменить GZipping при ошибке?

Ответы [ 2 ]

21 голосов
/ 27 декабря 2010

Я понимаю, что этот вопрос действительно устарел.

При Application_Error удалите фильтры из ответа, как это

 protected void Application_Error(Object sender, EventArgs e)
 {
    HttpApplication app = sender as HttpApplication;
    app.Response.Filter = null;
 }

Надеюсь, это кому-нибудь поможет.

3 голосов
/ 11 января 2011

В моем случае я поместил это в класс моей базовой страницы так:

public class BasePage : System.Web.UI.Page
{
    protected override void OnError(EventArgs e)
    {
        base.OnError(e);
        System.Web.HttpContext context = System.Web.HttpContext.Current;
        if (context != null && context.Response.Filter != null) 
            context.Response.Filter = null;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...