Asp.net Ajax框架无法仅在IE上加载Gzip压缩

Asp.net Ajax框架无法仅在IE上加载Gzip压缩,asp.net,ajax,gzip,Asp.net,Ajax,Gzip,好吧,我让gzip工作,但IE有问题。(FF和Chrome可以正常工作) 消息:加载ASP.NET Ajax客户端框架失败。(以及许多其他与js相关的错误) 如何防止ie浏览器上的gzip压缩?? 其他有类似问题的人在IIS中启用了压缩,这似乎解决了问题,但我不能在我的折扣机上这样做 这就是我使用的: HttpApplication app = (HttpApplication)sender; string acceptEncoding = app.Reques

好吧,我让gzip工作,但IE有问题。(FF和Chrome可以正常工作) 消息:加载ASP.NET Ajax客户端框架失败。(以及许多其他与js相关的错误)

如何防止ie浏览器上的gzip压缩?? 其他有类似问题的人在IIS中启用了压缩,这似乎解决了问题,但我不能在我的折扣机上这样做

这就是我使用的:

        HttpApplication app = (HttpApplication)sender;

        string acceptEncoding = app.Request.Headers["Accept-Encoding"];
        Stream prevUncompressedStream = app.Response.Filter;
        if (acceptEncoding != null && acceptEncoding.Length != 0)
        {

            acceptEncoding = acceptEncoding.ToLower();
            if (acceptEncoding.Contains("gzip"))
            {

                app.Response.Filter = new GZipStream(prevUncompressedStream, CompressionMode.Compress);
                app.Response.AppendHeader("Content-Encoding", "gzip");
            }

            else if (acceptEncoding.Contains("deflate"))
            {
                // defalte

                app.Response.Filter = new DeflateStream(prevUncompressedStream, CompressionMode.Compress);
                app.Response.AppendHeader("Content-Encoding", "deflate");

            }
        }

尝试只压缩以aspx结尾的文件,并将包含您遇到问题的Javascript的WebResource留给iis进行压缩

string cTheFile = HttpContext.Current.Request.Path;
string sExtentionOfThisFile = System.IO.Path.GetExtension(cTheFile);

if (sExtentionOfThisFile.Equals(".aspx", StringComparison.InvariantCultureIgnoreCase))
{
    // run your code for compression here
}

这将解决您的问题。

@dll32压缩webresource时,真正的问题是webresource在压缩后设置了错误的内容长度。IIS如何能够在没有问题的情况下压缩它们