Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

IE scrambles script in IIS7 with static compression turned on

I am having issues with javascript files not decompressing in IIS7 and stylesheets not loading properly.

I can fix this issue by turning off Static compression in IIS but this can't be a permanent solution. The issue has suddenly started happening. We haven't changed the code.

The web application is an asp.net web forms app in .net 4. static and dynamic compression was set in IIS. another web forms web application is still running fine with static compression set at the application level.

the server was updated to .net 4.5 framework.

Some of the stylesheets tags are set to runat server as I append a version number to force a reload of the css when its cached and a new version is released.

This issue only happens in Internet Explorer.

I am really stuck on this issue.

The Request

Request GET        /webapp/JavaScript/jQuery/js/jquery-1.3.2.min.js HTTP/1.1
Accept  text/html, application/xhtml+xml, */*
Accept-Language x-en-GB-zscot
User-Agent  Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
UA-CPU  AMD64
Accept-Encoding gzip, deflate
Host    localhost
Connection  Keep-Alive

Response Headers

Key Value
Response    HTTP/1.1 200 OK
Cache-Control   private
Content-Type    application/x-javascript
Content-Encoding    gzip,gzip
Last-Modified   Wed, 10 Oct 2012 15:45:44 GMT
Accept-Ranges   bytes
ETag    "04f24efea6cd1:0"
Vary    Accept-Encoding
Server  Microsoft-IIS/7.5
X-Compressed-By HttpCompress
Date    Tue, 04 Dec 2012 11:07:13 GMT
Content-Length  19788

Part of the Response Body

‹
@õ¿‹ä½kwÚȶ(úýü
¬ÕÛ-…âá¤×>g +ŒtÂÛI~a²®²M7F^€ã¤ýÛï|T•ª„p²ö8çŽ;ÆéÑ1R©Þ5k¾kVéÕÿȽÊýñé)šÏµÃ¯áéh>y\溓›yI_ŠoŠ¯1Ïýrùè—Jü³GñC  RñÃûøñû|rw¿Ì¹#/÷º\þG®ßÏrŸ£Åä3|x
like image 286
skyfoot Avatar asked Dec 04 '12 11:12

skyfoot


1 Answers

This is qZip decompression fail. Can happen if the Content-Length on the header is not the correct one.

Some times if the page set the Content-Length on the header, and then the web server try to gZip the page, but fail to change the Content-Length - because have been all ready send to the browser.

Possible solutions is to remove the set of Content-Length from your code and let IIS set it, see if you all ready make qZip this files and decide - ether let iis do it for you, ether do it your self.

Similar problem and answer:
ASP.NET site sometimes freezing up and/or showing odd text at top of the page while loading, on load balanced servers

HTTP Compression: Some external scripts/CSS not decompressing properly some of the time

IIS content-type wrong for compressed CSS

like image 191
Aristos Avatar answered Oct 05 '22 08:10

Aristos