Ошибка вывода страницы с использованием Gzip в ASP.NET/IIS7
Я реализовал метод Rick Strahl GZipEncodePage на моем сайте, и он отлично работает для самого сайта. Однако, когда мой код выдает исключение, страница "Ошибка сервера" выглядит примерно так:
(источник: x01.co.uk)
Я пытался подключиться к Application_Error
пытаясь удалить заголовки GZip, но безрезультатно. Как я могу отменить GZipping при ошибке?
Ответы
Ответ 1
Я понимаю, что этот вопрос действительно устарел.
В приложении Application_Error удалите фильтры из Response, например
protected void Application_Error(Object sender, EventArgs e)
{
HttpApplication app = sender as HttpApplication;
app.Response.Filter = null;
}
Надеюсь, это поможет любому.
Ответ 2
В моем случае я помещал это в свой базовый класс следующим образом:
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;
}
}